Java编程思想 第8章 多态
来源:互联网 发布:2017年开淘宝店铺 编辑:程序博客网 时间:2024/06/06 02:55
1.private方法其实是final方法,因为基类的private方法对于子类来说是不可见的,因此无法被复写(override),这和final是一致的。
2.如果一个方法被声明为final,则就会关闭对这个方法的动态绑定,可以提高一点性能。
3.多态是一种让程序员“将改变的事物与未变的事物分离开来”的技术。
4.对域的访问操作都由编译器解析,不是多态的。例如,父类A有个域field,子类B也有一个域field。将一个A的引用指向B的对象,调用A.field,则这里访问的是A类对象的域field,因为是用A类引用访问的。如果是调用一个在B中被重载的方法来访问field,因为重载,将调用B类的方法,B类的方法访问的是B类中的field域。如果如果子类B的引用要访问父类A中的field域,需要用super.field。
5.构造器的调用顺序
零.在其他任何事物发生前,将分配给对象的存储空间初始化为二进制的零,数据成员或者为零,或者为和零等价的值,引用类型就是null。
一.调用基类的构造器,而且是递归到最底层,只用底层的构造完成了,才会返回上一层,执行上一层的任务;
二.按声明的顺序调用数据成员的构造函数,以及基本类型的初始化;
三.调用导出类构造器的主体,也就是说,你在导出类里写的东西,现在才会被执行。
6.在构造器中调用被子类覆盖的方法是会产生很难预料的结果的。
在构造器内部,整个对象可能只有基类的部分被初始化,子类还没有被初始化。然而,如果这时在父类的构造器中调用一个被子类覆盖的方法,这个动态方法调用会向外深入到继承结构的内部,调用子类的方法,而这个方法需要操作的数据成员还未初始化,它们还是零值。
7.协变返回类型
子类中覆盖的方法,它的返回值的类型可以是父类的这个方法的返回值类型的子类。
- Java编程思想 第8章 多态
- 《Java编程思想》--多态--第8章
- 《Java 编程思想》第8章 多态 笔记
- [学习笔记][Java编程思想]第8章:多态
- 《Java编程思想》(第二版)第07章:多态(polymorphism)
- JAVA编程思想:第8章 对象的容纳
- 《java编程思想》第22章练习8
- java编程思想笔记(第四版*第8章)
- Java编程思想第四版第8章练习
- java编程思想学习-第8章多态
- JAVA编程思想:第7章 多形性
- JAVA编程思想:第14章 多线程
- JAVA编程思想:第17章 项目
- JAVA编程思想 第1,2章
- 《java编程思想》第4章练习
- 《Java编程思想》第9章 接口
- 《java编程思想-第2章》读书笔记
- Java编程思想 - 第7章、复用类
- 字符串反转 算法
- 《飞鸽传书2007怎么用》这种即时通讯技术已开始普及
- 不是数学高手就免了,这道初二数学题实在太难
- Only Linux & C -- 一些看法
- ogre画圆
- Java编程思想 第8章 多态
- 【POJ 1084】 很烦人的DLX
- linux下svn命令大全
- Hadoop for Archiving Email
- <寒江独钓>Windows内核安全编程__键盘过滤之内核级Hook(一)
- 有两个程序员得了肺癌 都是30多岁的男人
- <meta name="viewport" content="width=device-width...
- 记录我的博客成长历程
- 一个线性时间下的原地置换排序算法