首先初始化static对象,
也就是说static Table t2=new Table();先被初始化
然后是Table类中的static对象(static Bowl b1=new Bowl(1);)
再调用Bowl构建器
也就是说static Table t2=new Table();先被初始化
然后是Table类中的static对象(static Bowl b1=new Bowl(1);)
再调用Bowl构建器
解决方案 »
- java类变量的垃圾回收问题
- Exception occurred during event dispatching 数据库操作异常 不知怎么解决
- 给个重载repaint的例子咯,谢谢!!!!
- 有关字体和事件监听的问题(初学者)
- 菜鸟求问:这个程序怎么回事?
- 浏览器中显示不出Applet程序?
- 在java 子类继承父类的的非私有变量和方法 ?这句话对吗
- transient 和 volatile 到底是什么?到底怎么用?
- 请问,如何Applet实现windows下的打印????
- JBuilder7.0怎么不能调试
- 如何在Applet中,将一个远程读出的文件中的中文正确显示?请高手修改下面的源码
- 高分相送,谁有<java语言与面向对象的程序设计>源代码,立即给分?
这里的初始化我也看过了,首先初始化所有static对象,如果有继承,就先构造父类,然后子类,最后是构造MAIN中的对象
初始化时能否用static 块: static {
new Table();
new Cupboard(); }
有父类时-->装载父类-->初始化父类所有static成员(对象与数据成员)-->初始化子类所有static成员-->产生对象-->初始化父类所有non-static成员-->调用父类构造函数-->初始化子类所有non-static成员-->调用子类构造函数
无父类时-->初始化所有static成员-->产生对象-->初始化所有non-static成员-->调用构造函数
那main()函数什么时候调用呢