/*
静态代码块
格式:
static{
静态代码块中执行语句
}
特点:随着类的加载而执行,并且只会执行一次,并且还优先于主函数。
作用:用于给类进行初始化
*/
/*构造代码块特点:
对象一建立就运行了,而且优先于构造函数执行
作用:给对象进行初始化的
构造代码块和构造方法的区别:
构造方法是对应的对象进行初始化,
构造代码块是给所有的对象进行统一的初始化
构造代码块中定义是不同对象共性的初始化内容
*/
class Person{
static{
System.out.println("我是静态代码块");
}
{
System.out.println("我是构造代码块");
}
}
class A6_42{
public static void main(String[] args){
Person n= new Person();//创立对象、此时构造代码块执行一次 。执行此句前、先执行了静态构造代码块、显示我是静态代码块、只执行一次。因Person类被引进来就加载了。
Person m= new Person();//再创立另外一个对象、此时构造代码块又执行一次
=目前、执行2次、显示二句。我是构造代码块。
}
}
[此贴子已经被作者于2016-6-21 13:47编辑过]