继承使用要点
- 父类也称作超类、基类。子类:派生类等。
- Java中只有单继承,没有像C++那样的多继承。多继承会引起混乱,使得继承链过于复杂,系统难以维护。
- Java中类没有多继承,接口有多继承。
- 子类继承父类,可以得到父类的全部属性和方法(除了父类的构造方法),但不见得可以直接访问(比如,父类的私有属性和方法)。
- 如果定义一个类时,没有调用extends,则它的父类是:java.lang.Object。
重写(Override)和重载(Overload)完全无关
子类重写父类的方法,可以用自身行为替换父类行为。重写是实现多态的必要条件。
方法重写需要符合下面的三个要点:
- “==”:方法名、形参列表相同。
- “<=”:返回值类型和声明异常类型,子类小于父类。
- “>=”:访问权限,子类大于等于父类。
final 关键字
final 关键字的作用:
修饰变量:被它修饰的变量不可改变。一旦赋了初值,就不能被重新赋值。
修饰方法:该方法不可被子类重写。但是可以被重载。
修饰类:修饰的类不能被继承。比如:Math、String等。
除了继承,“组合”也能实现代码的复用。“组合”核心是“将父类对象作为子类的属性”。