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

构造代码块、构造函数、静态代码块 学习笔记

2015-07-16 16:32 204 查看

构造代码块

package crud.entity;

import java.util.Date;

public class User {
private int uid;
private String naem;
private Date date;

//构造函数
public User(){
System.out.println("构造函数...");
}
//构造代码块
{
System.out.println("构造代码块...");
}
//静态代码块
static{
System.out.println("静态代码块...");
}

......

public static void main(String[] args){
User u = new User();
}
}


[b]构造代码块的作用:[/b]

给对象进行初始化,对象一建立就运行,而且优先于构造函数执行。

[b]构造函数的作用:[/b]

给对象进行初始化,对象一建立就运行。

[b]构造函数和构造代码块的区别:[/b]

构造代码块是给所有对象进行统一初始化;而构造函数是给对应的对象初始化。

构造代码块中定义的是不同对象共性的初始化内容。

[b]静态代码块的作用:[/b]

随着类的加载而执行,只执行一次,并优先于主函数,用于给类进行初始化。

下面为 new 一个对象的执行步骤

User u = new User();


1、加载User.class

2、执行该类的static代码块,如果有的话,给User.calss初始化

3、在堆内存中开辟空间,分配内存地址

4、在堆内存中建立对象的特有属性,并进行默认初始化

5、对属性进行显示初始化

6、对对象进行构造代码块初始化

7、对对象进行对应的构造函数初始化

8、将内存地址赋给栈内存中的u变量

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: