有一个类A,对于其构造方法的声明正确的是( )
A. void A(int x) {...}
B. A(int x) {...}
C. A A(int x) {...}
D. int A(int x) {...}
下面有关子类调用父类构造方法的描述正确的是( )
A. 子类定义了自己的构造方法,就不会调用父类的构造方法
B. 子类必须通过super关键字调用父类有参数的构造方法
C. 如果子类的构造方法没有通过super调用父类的构造方法,那么子类会先调用父类不含参数的构造方法,再调用子类自己的构造方法。
D. 创建子类的对象时,先调用子类自己的构造方法,然后调用父类的构造方法
定义类B和类C如下,并将其保存为:B.java文件,得到的结果是( )class B { int b;B(int i) { b=i;}}class C extends B{ double c=7.8; }
A. 代码能够成功编译并运行
B. 代码无法编译,因为类B不是一个应用程序或小程序
C. 代码无法编译,因为类B没有定义不带参数的构造方法
D. 代码无法编译,因为类B没有定义一个不带参数的构造方法
设已声明了一个类A的两个对象a1, a2,为了初始化a1和a2,下面语句正确的是( )
A. a1, a2=new A( )
B. a1=A.new( ); a2=A.new( );
C. a1=new ( ); a2=new ( );
D. a1=new A( ); a2=new A( );