首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > J2SE开发 >

SCJP中的一路小题不懂

2011-12-08 
SCJP中的一道小题不懂.classSuper{publicinti0publicSuper(Stringtext){i1}}publicclassSubextendsSup

SCJP中的一道小题不懂.
class   Super{    
        public   int   i=0;    
        public   Super(String   text){    
        i=1;    
        }    
        }    
        public   class   Sub   extends   Super{    
            public   Sub(String   text){    
              i=2;    
            }    
        public   static   void   main(String   args[]){    
          Sub   sub=new   Sub( "Hello ");    
          System.out.println(sub.i);    
          }    
          }    
        what   is   the   result?            
          A.   compile   will   fail    
          B.   compile   success   and   print   "0 "    
          C.   compile   success   and   print   "1 "    
          D.   compile   success   and   print   "2 "    
选什么啊.谢谢.最好能解释下.

[解决办法]
干吗不运行一下
[解决办法]
父类没有默认构造方法,子类要显示调用
[解决办法]
如果想考SCJP建议你看JAVA2学习指南.我就是看的那个.
[解决办法]
在调用子类的构造函数时先调用父类的默认构造函数,
[解决办法]
假设A是B的父类,B是A的子类。

1、如果程序员没有给类A没有提供构造函数,则编译器会自动提供一个默认的无参数的构造函数,如果用户提供了自己的构造函数,则编译器就不在提供默认的无参数构造函数。

2、子类B实例化时会自动调用父类A的默认构造函数,所以如果A的默认的无参数的构造函数为private,则编译器会报错,而如果A没有提供默认的无参数的构造函数,而提供了其他类型的构造函数,编译器同样会报错,因为B找不到A的默认无参数构造函数。所以,我们最好给父类A提供一个无参数的构造函数。

3、或者在B的构造函数中显示的调用父类A的有参构造函数。super(parameter)

[解决办法]
学习了,up
[解决办法]
在子类的构造方法中第一句应该是super(text);先显示的指定要调用的父类的构造方法。

结贴是个好习惯,谢谢。
[解决办法]
来晚了 帮顶一下!!!
[解决办法]
去了解下构造一个类时方法的调用顺序就明白了
[解决办法]
楼主想考SCJP,最基本的问题一定要懂啊

如果父类只有带参数的构造函数

那么子类的构造函数的第一行必须明确调用
[解决办法]
学习了
[解决办法]
编译错误。因为父类重写了一个构造方法,把原来的无参数的构造方法给覆盖了,
子类继承父类的构造方法默认是继承无参数的,现在父类没有,子类在实例话的时候,要先调用父类的构造方法 ,现在父类无参数的方法没有 所以 编译错误
[解决办法]
学习了

[解决办法]
scjp对找工作起不到什么作用,很多公司招人不会看这些的。scjp只考java基础,而只懂点java基础是找不到工作的
[解决办法]
zdjray(PubSoft) 说的很深刻..~
[解决办法]
那如果一类C既继承自类A又继承自类B,那么在实例化子类C的时候该怎么做呢?

热点排行