《JAVA编程思想》第七章 多态 读书笔记

多态(后期绑定)

JAVA中所有的函数,除了声明为final,皆使用后期绑定。(final函数存在的意义:防止子类重载)

构造函数的调用顺序:

1、调用base class函数;

2、各个成员的声明顺序;

3、本身构造函数本体。

finalize()函数至少具有protected权限。

构造函数中唯一可以安全调用的函数便是base calss中的final函数(对private函数一样成立)。

注:

final和private的区别:

1、修饰类中的方法:

final关键字是用来限制方法的可重载性的。所以父类的final方法对子类是可继承不可重载的。

private关键字是用来限制方法的可见性的。所以父类的private方法对子类是不可继承不可重载的。

2、修饰类中的成员变量:

private修饰的成员变量跟成员方法一样,不能被子类继承,因为其对子类不可见。

final修饰的成员变量可被子类继承和使用,但是无法修改,只能将其初始化(该变量还未初始化的情况下)。

你可能感兴趣的:(《JAVA编程思想》第七章 多态 读书笔记)