java学习之对象的初始化过程
来源:互联网 发布:万户网络怎样 编辑:程序博客网 时间:2024/06/02 23:03
创建对象时,对象初始化过程:
1、类中数据成员的隐式初始化。(下图例子中num隐式初始化为0)
2、子类的构造函数进栈。
3、父类构造函数初始化。(因为子类构造函数第一行有隐式的super())
4、子类中成员变量显示初始化。(下图例子中num初始化为9)
5、构造代码块显示初始化。
class Fu{Fu(){System.out.println("Fu constructor run...");show();}void show(){System.out.println("Fu show run");}}class Zi extends Fu{int num = 9;{System.out.println("constructor code..." + num);num = 10;}Zi() {System.out.println("zi constructor run..." + num);}void show(){System.out.println("Zi show run..." + num);}}public class ClassTest {public static void main(String[] args){new Zi();}}
/*运行输出Fu constructor run...Zi show run...0constructor code...9zi constructor run...10*/
父类构造函数调用子类中的show(),是因为当前建立的是子类对象,this指针指向当前子类对象,
父类对象的show()方法被子类对象的show()方法覆盖了,所以现在子类对象中找show()方法,
如果没有才在父类对象中找show()方法。
0 0
- java学习之对象的初始化过程
- JAVA对象的初始化过程
- java对象的初始化过程
- JAVA 的对象初始化过程
- JAVA 对象的初始化过程
- JAVA对象的初始化过程
- Java对象初始化的过程
- 对象的初始化过程-java
- Java - 对象的初始化过程
- Java: 对象的初始化过程
- Java 对象的初始化过程
- java基础之 ----对象初始化过程
- JAVA基础知识再学习(2)对象的初始化过程 & 对象的调用过程
- JAVA 对象的初始化过程和类的初始化过程
- java对象初始化过程
- java 对象初始化过程
- java对象初始化过程
- Java 对象初始化过程
- 【Troubleshooting】用户组/权限_导致grid日志不轮循清理_Bug 9595783
- 黑马程序员------------高新面试题之银行调度系统
- CCSpriteFrameCache精灵帧缓存分析(1)
- 3. opencv进行SIFT特征提取
- 省赛总结
- java学习之对象的初始化过程
- 九章算法面试题10 赛马问题
- DllMain函数参数简介
- 新时期,老师该怎么撑伞?
- 使用stringstream对象简化类型转换
- 关于ArrayList的5道面试题
- 九章算法面试题11 递增矩阵
- python入门系列(4) -- python常见应用
- 黑马程序员-------------反射