| 发表于:2007-03-01 15:26:5512楼 得分:0 |
情况应该是这个样子的,根据子类对象的实例化过程(参张孝祥java p129)1,new 之后分配成员变量存储空间并进行默认初始化:关键是默认初始化而不是显式初始化, 2,然后根椐参数选择构造方法,当然这里是无参的,,然后显式或隐式的追溯父类的构造方法,在其中调用了已被覆盖的test(),并输出了已被默认初始化了的int型变量,,值为0,(可以解释了如果改int为string型的话值为null), 3,最后才显式初始化了private int instancevalue = 20; 默认初始化这个是关键所在吧 ~~ | | |
|