`
pingfan
  • 浏览: 38823 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

一个笔试题目-考实例化先后顺序

    博客分类:
  • java
阅读更多
先看代码:

类A:


package com.wu.init;

public class A {
	{
		System.out.println(1);
	}
	
	public A() {
		System.out.println(2);
	}
	
	static{
		System.out.println(3);
	}

}


类B继承A类

package com.wu.init;

public class B extends A {

	{
		System.out.println(4);
	}

	public B() {
		System.out.println(5);
	}

	static {
		System.out.println(6);
	}
	
	public static void main(String[] args) {
		A a= new B();
	}

}


执行B类的main方法,请问输出的是什么?

回来后自己测试一下,发现自己答错了


运行后输出为:
3
6
1
2
4
5

是否可以这么理解:static{}段先执行,再到{},然后才是构造参数?
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics