Java进阶教程(二)
代码块
构造代码块:给所有的对象进行统一的初始化。对象一建立就运行并且优先于构造函数。
静态代码块:随着类的加载而加载。只执行一次,用于给类进行初始化。
public class Demo {
public static void main(String[] args) {
System.out.println("main函数……");
System.out.println("新建对象1:");
new People("Canva");
System.out.println("新建对象2:");
new People("Chen");
}
}
class People{
private String name;
public static String city;
//静态代码块
static {
System.out.println("静态代码块……");
city = "Fuzhou";
}
//构造代码块
{
System.out.println("构造代码块……");
name = "unknow";
}
//构造函数
public People(String name) {
System.out.println("构造函数……");
this.name = name;
}
}
运行结果如下:
main函数……
新建对象1:
静态代码块……
构造代码块……
构造函数……
新建对象2:
构造代码块……
构造函数……
作业
请读者思考如下问题,欢迎在评论中互动:
主函数、构造函数、静态代码块和构造代码块执行的先后顺序是怎样的?