本帖最后由 sam9204 于 2014-6-11 09:04 编辑
class HelloA {
public HelloA() {
System.out.println("HelloA");
}
{ System.out.println("I'm A class"); }
static { System.out.println("static A"); }
}
public class HelloB extends HelloA {
public HelloB() {
System.out.println("HelloB");
}
{ System.out.println("I'm B class"); }
static { System.out.println("static B"); }
public static void main(String[] args) {
new HelloB();
}
}
问:输出结果是什么
这段代码很好地考察了静态语句块、构造语句块及构造函数的执行顺序,之前貌似弄清楚了,不过最近又看到这种题目,又做错了,请教分析它们的执行顺序,谢谢。
顺便为了考察下各位,我就先不贴答案,让大家也巩固一下相关知识 |
|