JAVA程序运行过程中成员变量的执行顺序
2017-10-24 17:48
411 查看
类加载过程中成员变量的初始化顺序:
第一步:静态变量初始化(默认初始化->显示初始化)
第二步:静态代码块
第三步:静态方法
第四步:构造代码块(初始化构造函数,可以理解放在为在构造函数的第一行或者前几行的代码)
第五步:构造函数(初始化对象)
在继承关系中:
先初始化父类的静态成员变量再初始化子类的静态变量,再初始化父类的构造代码块构造函数,再初始化子类的构造代码块构造函数.即:
父类{
静态变量;
静态代码块;
静态方法;
}
子类{
静态变量;
静态代码块;
静态方法;
}
父类{
构造代码块;
构造函数;
}
子类{
构造代码块;
构造函数;
}
局部变量:限定变量的执行作用域,一旦使用完立即释放内存.
构造代码块:
一个类中,有多个构造方法,这些构造方法都要执行相同的操作,那么可以把这些操作,抽象出来,形成构造代码块( 也就是说构造代码块,是初始化构造方法的)。
第一步:静态变量初始化(默认初始化->显示初始化)
第二步:静态代码块
第三步:静态方法
第四步:构造代码块(初始化构造函数,可以理解放在为在构造函数的第一行或者前几行的代码)
第五步:构造函数(初始化对象)
在继承关系中:
先初始化父类的静态成员变量再初始化子类的静态变量,再初始化父类的构造代码块构造函数,再初始化子类的构造代码块构造函数.即:
父类{
静态变量;
静态代码块;
静态方法;
}
子类{
静态变量;
静态代码块;
静态方法;
}
父类{
构造代码块;
构造函数;
}
子类{
构造代码块;
构造函数;
}
局部变量:限定变量的执行作用域,一旦使用完立即释放内存.
构造代码块:
一个类中,有多个构造方法,这些构造方法都要执行相同的操作,那么可以把这些操作,抽象出来,形成构造代码块( 也就是说构造代码块,是初始化构造方法的)。
相关文章推荐
- Java初始化顺序总结及其程序执行过程图- 静态变量、静态代码块、成员变量、构造函数
- java程序在执行过程中,类,对象以及它们成员加载、初始化的顺序如下:
- Java中静态块,静态成员变量,构造块,普通成员变量,构造方法的执行顺序
- Java类成员变量、普通成员变量、初始化块、构造方法的初始化和执行顺序
- java中成员变量、代码块、构造函数运行顺序
- java程序执行过程及静态块、非静态块执行顺序
- java中子类继承父类程序各成员的执行 顺序
- 从”JAVA“而终 7:java运行过程以及各变量初始化顺序
- 黑马程序员_Java基础_02常量、变量、数据类型、运算符、语句、程序执行过程
- javaSE学习03_java常量和变量程序执行过程
- java静态/动态成员变量、初始化块,父类/子类构造函数执行顺序问题
- Java成员变量初始化和执行顺序
- Java 成员变量 静态块 构造块 构造方法执行顺序测试
- Java普通代码块,构造代码块,静态代码块,成员变量的执行顺序的代码实例
- 《JAVASE 基础学习》 第一天 环境变量配置、第一个程序运行执行过程
- 关于Java程序中类定义对象的处理,以及类中变量与方法的运行过程
- Java中static成员变量、成员变量、static代码块、代码块、构造方法的执行顺序
- java 父类访问子类对象的实例变量 继承过程中的执行顺序
- java静态/动态成员变量、初始化块,父类/子类构造函数执行顺序问题
- java静态/动态成员变量、初始化块,父类/子类构造函数执行顺序问题