ARTICLE · INTELLIGENCE

战地情报 · 详情页

来自尧图项目组的一线实战观察与深度解析

10.18

10.18

Java 继承与多态
一、继承

  1. 作用:复用父类代码,表示 is-a 关系。
  2. 语法:class 子类 extends 父类 {}
  3. Java 类单继承;接口可多实现。
  4. 子类构造器默认先调用父类无参构造 super();父类无无参构造时需显式 super(参数)。
  5. 创建子类对象:先执行父类构造,再执行子类构造。
  6. 子类不能直接继承父类 private 成员;构造器不能被继承。
  7. 方法重写 @Override:方法名、参数列表相同;返回类型相同或协变;访问权限不能更小;异常不能更宽。
  8. static、final、private 方法不能被重写(private 只是同名新方法)。
  9. final:final 类不能继承;final 方法不能重写;final 变量不能再次赋值。
    二、多态
  10. 前提:继承/实现 + 方法重写 + 父类引用指向子类对象。
  11. 格式:父类 变量 = new 子类();
  12. 方法调用:编译看左边,运行看右边(动态绑定)。
  13. 成员变量:编译和运行都看左边(父类引用类型)。
  14. static 方法:看左边,不表现多态。
  15. 向上转型:子类 -> 父类,自动。
  16. 向下转型:父类 -> 子类,强制;先用 instanceof 判断。
  17. 抽象类和接口常用来体现多态:父类/接口引用调用子类/实现类重写方法。
RELATED READING

延伸阅读

更多一线实战笔记与深度复盘,助您持续精进