注册 登录
编程论坛 JAVA论坛

静态代码块和局部变量代码块的区别

壮宝出击 发布于 2016-06-20 17:53, 2084 次点击
求大神指教,视频没看懂
2 回复
#2
hhwz2016-06-21 11:52
你想了解什么
#3
zzjvslove2016-06-21 13:42
/*
静态代码块
格式:
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编辑过]

1