静态语句块在继承中的顺序问题 继承时父子类都有一个静态语句块,实例子类对象,为什么执行顺序是先父类后子类呢?请高手指教!!! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 静态语句是在编译的时候就初始/执行所以是最先执行的语句快.constructor是只有在创建对象的时候才执行,所以静态语句是比constructor先执行的. class c1 extends c2 {}; 是先编译C2,这时候执行 c2 中的static(如果父类中的静态变量不先初始,那么在子类中就用不了,这也就是说父类的静态变量/语句先执行)然后编译C1, C1 的静态执行然后是C1 静态方法 public static void main()....如果在main()里面有 对象创建,这时候就是父类的constructor,然后是子类的constructor一个例子:http://keshuwei.wordpress.com/2010/11/10/the-execute-order-between-static-and-constructor/ constructor是先父类后子类,而static比constructor还要在前。这是java设计者的原因。 有问题,在线等解答!!!! 一个java applet的程序.怎么找到APPLET文件路径 关于概念的解释 急,求几个简单(小白)的java程序,学习用,小弟刚学!!!!!!!!!(在线等) 急!JDK1.1.X已经无法找到下载的地方了,谁可以提供一个给我? 新人,求<<Java2核心技术卷I>>电子版,(找了有二个小时没有找到)哪个好心人有吗? 请问开发移动通讯软件应该掌握什么知识,请大家赐教!!!!!!! Java的实例化问题 如何让批处理文件执行完毕后窗口不关闭,批处理文件直接点击执行 这个有挑战性的sql怎么拼? swing 中2个事件连锁触发,如何让触发停止!!! 项目总结怎么写呀
所以是最先执行的语句快.
constructor是只有在创建对象的时候才执行,所以静态语句是比constructor先执行的.
class c1 extends c2 {}; 是先编译C2,这时候执行 c2 中的static(如果父类中的静态变量不先初始,那么在子类中就用不了,这也就是说父类的静态变量/语句先执行)然后编译C1, C1 的静态执行然后是C1 静态方法 public static void main()....如果在main()里面有 对象创建,这时候就是父类的constructor,然后是子类的constructor一个例子:
http://keshuwei.wordpress.com/2010/11/10/the-execute-order-between-static-and-constructor/