java类执行顺序
来源:互联网 发布:linux创建db2数据库 编辑:程序博客网 时间:2024/05/20 02:22
(1)父类静态成员和静态初始化块,按在代码中出现的顺序依次执行。
(2)子类静态成员和静态初始化块,按在代码中出现的顺序依次执行。
(3)父类实例成员和实例初始化块,按在代码中出现的顺序依次执行。
(4)执行父类构造方法。
(5)子类实例成员和实例初始化块,按在代码中出现的顺序依次执行。
(6)执行子类构造方法。
下面是示例代码:
package 类成员执行顺序;
public class Test {
public static void main(String[] args) {
new Son();
}
}
//父类Parent
class Parent {
{
System.out.println("Parent的初始化块");
}
static {
System.out.println("Parent的static初始化块");
}
public Parent() {
System.out.println("Parent的构造方法");
}
}
class Son extends Parent {
{
System.out.println("Son的初始化块");
}
static {
System.out.println("Son的static初始化块");
}
public Son() {
System.out.println("Son的构造方法");
}
}
上述代码的执行结果如下:
Parent的static初始化块
Son的static初始化块
Parent的初始化块
Parent的构造方法
Son的初始化块
Son的构造方法
(2)子类静态成员和静态初始化块,按在代码中出现的顺序依次执行。
(3)父类实例成员和实例初始化块,按在代码中出现的顺序依次执行。
(4)执行父类构造方法。
(5)子类实例成员和实例初始化块,按在代码中出现的顺序依次执行。
(6)执行子类构造方法。
下面是示例代码:
package 类成员执行顺序;
public class Test {
public static void main(String[] args) {
new Son();
}
}
//父类Parent
class Parent {
{
System.out.println("Parent的初始化块");
}
static {
System.out.println("Parent的static初始化块");
}
public Parent() {
System.out.println("Parent的构造方法");
}
}
class Son extends Parent {
{
System.out.println("Son的初始化块");
}
static {
System.out.println("Son的static初始化块");
}
public Son() {
System.out.println("Son的构造方法");
}
}
上述代码的执行结果如下:
Parent的static初始化块
Son的static初始化块
Parent的初始化块
Parent的构造方法
Son的初始化块
Son的构造方法
阅读全文
0 0
- java类执行顺序
- java类执行顺序
- java类执行顺序
- java类执行顺序
- Java类执行顺序
- java 类执行顺序 +变量赋值顺序
- java类的执行顺序
- java类的执行顺序
- Java类的执行顺序
- Java类代码执行顺序
- Java类中的执行顺序
- java类中的执行顺序
- java类方法执行顺序
- java类代码执行顺序
- java, c#类执行顺序
- java类执行的顺序
- Java 类加载执行顺序
- java类的执行顺序、语句执行顺序详解
- Linux oom-killer的问题
- Mysql中关于时间戳与日期的转换
- 初识HTML5(二)
- 51nod 1312 最大异或和
- iOS 代理kvc和kvo
- java类执行顺序
- Shiro加密
- ubuntu 安装python gym
- 第七期 使用Qemu+Buildroot+Eclipse打造一个优雅的开发环境 《虚拟机就是开发板》
- Bzoj 4204: 取球游戏
- 获取元素的三种DOM方法
- 杭电 2049
- crond服务和crontab命令
- Java反射