【发布时间】:2011-06-23 09:07:03
【问题描述】:
以下的优先顺序是什么 构造函数、静态块和非静态块 谢谢
【问题讨论】:
标签: regexbuddy
以下的优先顺序是什么 构造函数、静态块和非静态块 谢谢
【问题讨论】:
标签: regexbuddy
类初始化时会执行一个非静态块。一个静态块只会被执行一次。
构造函数会在对象实例化时执行。
实例化对象时将执行静态块。
这取决于您的语言。
对于Java,总是先执行静态块,然后是非静态块,然后是构造函数。
public class Q20 {
static int i;
int j;
static {
System.out.println("static block");
}
{
System.out.println("non static block");
}
public Q20() {
System.out.println("constructor");
}
public static void main(String args[]) {
Q20 q = new Q20();
}
}
静态块
非静态块
构造函数
【讨论】: