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

转来的:java中静态块和构造函数的执行顺序问题

2010-02-04 16:19 357 查看
public class Test2 extends TestStatic{

static{ System.out.println("b"); }

Test2(){ System.out.println(2); }
public static void main(String args[]){

TestStatic A=new Test2();

A=new Test2();}
}
class TestStatic {

static{System.out.println("a");}

TestStatic(){ System.out.println(1);}

}
执行结果:a b 1 2 1 2
可以看出执行顺序为:先执行父类中静态代码块,然后是子类静态块,其次父类构造函数,最后是子类构造函数。另外注意静态代码块只执行一次,所以后面语句A=new
Test2();执行结果只有1 2。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: