类加载和实例化顺序
来源:互联网 发布:手机淘宝店铺装修 编辑:程序博客网 时间:2024/06/06 07:10
类实例化, 先成员变量默认初始化, 成员变量显式初始化, 执行构造函数
有父子关系的类实例化, 成员变量默认初始化, 执行父类构造函数, 成员变量显式初始化, 执行子类构造函数
class Fu{ Fu() { super(); show(); //通过结果可以看出,子父类有同名show方法,调用的是子类show方法。 return; } void show() { System.out.println("fu show"); }}class Zi extends Fu{ int num = 8; Zi() { super(); //-->通过super初始化父类内容时,子类的成员变量并未显示初始化。等super()父类初始化完毕后, //才进行子类的成员变量显示初始化。 System.out.println("zi cons run...."+num); return; } void show() { System.out.println("zi show..."+num); }}class ExtendsDemo5 { public static void main(String[] args) { Zi z = new Zi(); z.show(); }}
输出:
zi show...0
zi cons run....8
zi show...8
类的加载和实例化顺序
1) 在堆内存中生成class对象, 把静态变量和静态方法加载到方法区, 这个堆内存中的class对象是方法区数据的入口
2) 静态变量默认初始化
3) 静态变量显式初始化
4) 执行静态代码块
5) 成员变量默认初始化, 显示初始化
6) 执行构造函数
阅读全文
0 0
- 类加载和实例化顺序
- 类的加载、实例化、初始化的区别和执行顺序
- 类从加载到对象实例化的过程顺序
- Java类加载及实例化的调用顺序
- Java类加载及实例化的顺序心得
- 实例化一个对象(类加载)的执行顺序详解
- spring加载bean实例化顺序
- spring加载bean实例化顺序
- java类加载和实例化:静态代码块、初始化代码块、构造方法的执行顺序
- ue4-资源加载和实例化类
- 继承关系的类初始化和实例化的顺序
- 继承关系的类初始化和实例化的顺序
- 继承关系的类初始化和实例化的顺序
- Java的子类和父类实例化顺序
- Java中子类和父类的实例化顺序
- Java实例化对象时候的加载顺序
- Java类加载及创建实例(new)顺序
- 字节码加载和class实例(静态成员变量对象加载顺序)
- java使用phantomJs抓取动态页面
- Python 循环语句
- OpenCV学习笔记2-视频
- tensorboard的一些问题
- XWIKI的搭建
- 类加载和实例化顺序
- 初学json相关的一些知识
- java知识点
- Python While 循环语句
- sh文件执行报错
- 1487: [HNOI2009]无归岛
- 一丶线程的同步
- KMP模式匹配算法中next,nextval的分别实现
- vs2010 xaml cs 文件的大纲显示折叠线不显示了