-
9.(单选题)下列代码编译和运行的结果是:()。
01
class
Person {
02
String name =
" "
;
03
04
public
Person(String name) {
05
this
.name = name;
06
}
07
}
08
09
class
Employee
extends
Person {
10
String empNO =
"0000"
;
11
12
public
Employee(String empNO) {
13
this
.empNO = empNO;
14
}
15
}
16
17
public
class
EmployeeTest {
18
public
static
void
main(String[] args) {
19
Employee e =
new
Employee(
"1109"
);
20
System.out.println(e.empNO);
21
}
22
}
- A.输出:0000
- B.输出:1109
- C.代码public Employee(String empNO) {行,出现编译错误
- D.抛出运行时异常
正确答案:C
解析:本题考查继承中的构造方法。 子类的构造方法中必须通过super关键字调用父类的构造方法,这样可以妥善的初始化继承自父类的成员变量。如果子类的构造方法中没有调用父类的构造方法,Java编译器会自动的加入对父类无参构造方法的调用(如果该父类没有无参的构造方法,会有编译错误)。 本题中,父类Person没有提供无参数的构造方法,因此在代码public Employee(String empNO) {行,出现编译错误。
继承中的构造方法
最新推荐文章于 2021-04-02 16:55:56 发布