本帖最后由 胡谭龙 于 2015-3-22 07:51 编辑
- class Fu
- {
- Fu( )
- {
- System.out.println("fu null");
- }
- Fu(int x)
- {
- System.out.println("fu x");
- }
- }
- class Zi extends Fu
- {
- Zi( )
- {
- System.out.println("zi null");
- }
- Zi(int x)
- {
- this( );
- super(); //报错的位置。
- System.out.println("zi:"+x);
- }
- }
复制代码 如果Zi zi = new Zi(4); 因为Zi(int x)构造函数内第一行写this(),它默认调用了父类的无参构造函数,第二行的super();有调用了父类的无参构造函数,这么写是错误的 ,但为什么呢,这个语法上感觉说的过去,也就是初始化了两次父类
|
|