标题:求助关于初始化块!
取消只看楼主
晨风lxj
Rank: 1
等 级:新手上路
帖 子:59
专家分:0
注 册:2007-9-13
 问题点数:0 回复次数:3 
求助关于初始化块!

什么是初始化块,有什么作用?静态初始化块与非静态初始化快有什么区别?
静态初始化块、构造函数、非静态初始化块在一个类中的执行顺序?
下面这个程序输出的结果是什么?为什么是这个结果?

public class TestK{
public static void main(String[] args){
new A();
}
{
System.out.println("Test' non-static initialization"+"blook is invoked");

}
static{
System.out.println("Test' static initialization"+"blook is invoked");
}
}
class A extends B{
A(){
System.out.println("A's constructor is invoked");
}
{
System.out.println("A's non-static initialization"+"blook is invoked");
}
static{
System.out.println("A's static initialization"+"blook is invoked");
}
}
class B{

B(){
System.out.println("B's constructor is invoked");
}
{
System.out.println("B's non-static initialization"+"blook is invoked");
}
static{
System.out.println("B's static initialization"+"blook is invoked");
}
}

搜索更多相关主题的帖子: class public 
2007-09-28 21:49
晨风lxj
Rank: 1
等 级:新手上路
帖 子:59
专家分:0
注 册:2007-9-13
得分:0 
请问楼上的:
先静态后非静态,那为什么不输出Test' non-static initialization blook is invoked请解释一下!
2007-09-28 22:04
晨风lxj
Rank: 1
等 级:新手上路
帖 子:59
专家分:0
注 册:2007-9-13
得分:0 

执行的流程是先静态然后才是非静态,先父类再子类,先一般函数再构造函数!!对这句还是有点不明白,能不能具体的而把上面程序解释一下?

2007-09-28 22:16
晨风lxj
Rank: 1
等 级:新手上路
帖 子:59
专家分:0
注 册:2007-9-13
得分:0 

谢谢ls!

2007-09-28 22:49



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-173830-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 1.208828 second(s), 8 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved