本帖最后由 竹叶君子 于 2015-3-5 15:19 编辑
构造代码块 作用:给对象进行初始化。 特点:对象一建立就运行,而且优先于构造函数执行。 构造代码块和构造函数的区别: 构造代码块中定义的是不同对象共性的初始化内容,给所有对象进行统一初始化;而构造函数是给对应的对象初始化。 - class PersonTest
- {
- String name;
- int age;
- //构造代码块
- {
- System.out.println("构造代码块运行");
- }
- PersonTest() //无参数的构造函数
- {
- System.out.println("无参数的构造函数运行");
- }
- PersonTest(String name) //有一个参数的构造函数
- {
- System.out.println("有一个参数的构造函数运行");
- }
- }
复制代码classPersonTestDemo { public static void main(String[] args) { System.out.println("下面是建立第一个对象p1后的运行结果:"); PersonTest p1 = new PersonTest(); System.out.println(); System.out.println("下面是建立第二个对象p2后的运行结果:"); PersonTest p2 = newPersonTest("zhangsan"); } } 编译后运行结果如下: 通过运行结果可以看出,每次创建好对象后,构造代码块中的内容都会被执行;而重载的其他构造函数,是在其所属的对象被创建时,才开始执行。
|