您的位置:首页 > 编程语言 > Java开发

Java中静态初始化块、初始化块和构造方法的执行过程

2013-06-04 00:31 323 查看
最近比较忙,直接转载现成的。

本文转载地址为:http://advance0683.iteye.com/blog/1107653

Java中静态初始化块、初始化块和构造方法的执行过程



例子:

Java代码


package classmate;



public class Team {



public static void main(String[] args) {

Person p = new Person();

System.out.println("------------------------------");

Person p1 = new Person();

}



}



class Person{

//构造方法

public Person(){

System.out.println("Person Constructor...");

}



//初始化代码块

{

System.out.println("Person Initialization Block...");

}



//静态代码块

static {

System.out.println("Person Static Block...");

}

}



运行结果:



Java代码


Person Static Block...

Person Initialization Block...

Person Constructor...

------------------------------

Person Initialization Block...

Person Constructor...





当创建第一个Person对象p的时候,执行顺序应该是 静态代码块 > 初始化代码块 > 构造方法,但是当创建第二个Person对象p1的时候,执行顺序就变成了 初始化代码块 > 构造方法。原因很简单,因为 静态代码块只会在类第一次装入系统中才会执行,以后类在装入系统的时候,它就不执行了。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: