易学笔记-JAVA入门语言总结-第7章 复用类

  1. 所谓的组合就是在一个类的数据成员中声明另外一个类的对象,就好像声明一个基本类型一样:第7章 复用类/7.1 组合语法
  2. 在继承类中,通过super指明调用的是父类的方法 第7章 复用类/7.2 继承语法
  3. 类的初始化
    1. 基类的构造方法一层层网上被调用,比如 基类A,class B extends A,class C extends B,那么在 new C的时候,就先调用A的构造方法,再调用B的构造方法,最后才调用C的构造方法  第7章 复用类/7.2 继承语法/7.2.1 初始化基类
    2. 基类和导出类初始化顺序:第7章 复用类/7.9 初始化以及类的加载/7.9.1 继承和初始化
      1. 基类static成员域
      2. 导出类static成员域
      3. main方法
      4. 基类非static成员域
      5. 基类构造方法
      6. 导出类非static成员域
      7. 导出类构造方法
  4. 继承之间的代理指的是:第7章 复用类/7.3 代理
    1. 使用代理:先在导出类中声明基类的对象,然后再声明重载基类的方法,重载方法的实现逻辑是通过基类的对象调用基类的方法
    2. 不适用代理:直接通过导出类的对象调用基类的方法,前提是导出类没有重载基类的方法
  5. try中的finally就是无论是否有异常都会执行finally中的语句:第7章 复用类/7.4 结合使用组合和继承/7.4.1 确保正确清理
  6. 对象的清理顺序和声明调用顺序是相反的:第7章 复用类/7.4 结合使用组合和继承/7.4.1 确保正确清理
  7. 对于继承和组合到底怎么选择:第7章 复用类/7.5 在组合和继承之间选择
    1. 如果只想暴露一个类,不想让别人知道类中还有其它类,就用组合
    2. 如果只想用一下现有的类,而不是对现有的类进行扩展,就用组合
    3. 如果想扩展现有的类,就用继承
    4. 如果想向上引用,就用继承
  8. 对于final引用对象
    1. 如果是基本类型则为常量,常量的值不能修改;常量可以赋值给其它变量,其它变量的值可以修改
    2. 如果是对象类型,那么该对象引用就不能引用其它对象了,但是该引用可以赋值给其它引用;无论是否final,对象本身都可以修改
  9. 对于final方法:第7章 复用类/7.8 final关键字/7.8.2 final方法
    1. 如果一个方法声明为final则导出类不能重写它,也就是不能声明一个和基类相同的方法
    2. 所有private的方法都是final的,如果导出类中声明了同名的方法,不会覆盖基类的方法
  10. 对于final类:说明整个类都不能被修改,也就是不能被继承了第7章 复用类/7.8 final关键字/7.8.3 final类
  11. 对于static方法
    1. 基类声明了static方法,子类可以覆盖
    2. 如果static方法是私有的,也只能在本类的方法内部使用,不能外部调用
    3. 通过类名直接调用static方法,调用的都是各自类的static方法,和基础无关
    4. 通过向上引用,父类指向子类,这时候调用都是父类的static方法

猜你喜欢

转载自blog.csdn.net/u011830122/article/details/84238567
今日推荐