当前位置:文档之家› 课前考试6继承与多态

课前考试6继承与多态

1.下列选项中关于Java中super关键字的说法正确的是()。
(选择一项)
A) super关键字是在子类对象内部指代其父类对象的引用。
B) super关键字不仅可以指代子类的直接父类,还可以指代父类的父类。
C) 子类通过super关键字只能调用父类的方法,而不能调用父类的属性。
D) 子类通过super关键字只能调用父类的属性,而不能调用父类的方法。


2.在Java语言中,下列关于类的继承的描述,正确的是()。
(选择一项)
A) 一个类可以继承多个父类。
B) 一个类可以具有多个子类。
C) 子类可以使用父类的所有方法。
D) 子类一定比父类有更多的成员方法。


3.给定如下Java代码,关于super的用法,以下描述正确的是()。
Class C extends B{
public C(){
super();
}
}
(选择一项)
A) 用来调用类B中定义的super()方法
B) 用来调用类C中定义的super()方法
C) 用来调用类B的无参构造方法
D) 用来调用类B中第一个出现的构造方法


4.给定如下Java代码,编译运行时将输出。
Class Base{
int i=1;
public void amethod(){
System.out.println("Base.amethod()");
}
Base(){
amethod();
}
}
public class Descend extends Base{
int i=-1;
public static void main(String[] args){
Base b=new Descend();
System.out.println(b.i);
b.amethod();
}
public void amethod(){
System.out.println("Descend.amethod()");
}
}
(选择一项)
A) Base.amethod()
-1
Descend.amethod()

B) Descend.amethod()
1
Descend.amethod()
C) 1
Descend.amethod()
D) Base.amethod()
1
Descend.amethod()



5.在java中,如果类C是类B的子类,类B是类A的子类,那么下面描述正确的是()
(选择一项)
A) C不仅继承了B中的成员,同样也继承了A中的成员
B) C只继承了B中的成员
C) C只继承了A中的成员
D) C不能继承A或B的成员


6.在Java中,有如下两个类Student和Person。如果Student是Person的子类,则下列声明对象x的语句中错误的是( )。
(选择一项)
A) Person x = new Student();
B) Person x = new Person();
C) Student x = new Person();
D) Student x = new Student();


7.在Java中,多态的实现不仅能减少编码的工作量,还能大大提高程序的可维护性及可扩展性,那么实现多态的步骤包括以下几个方面除了( )。
(选择一项)
A) 子类重写父类的方法
B) 子类重载同一个方法
C) 定义方法时,把父类类型作为参数类型;调用方法时,把父类或子类的对象作为参数传入方法
D) 运行时,根据实际创建的对象类型动态决定使用哪个方法


8.分析如下所示的Java代码,则选项中的说法正确的是( )。
class Parent {
public String name;
public Parent(

String pName) {
https://www.doczj.com/doc/8b1390189.html, = pName;
}
}
public class Test extends Parent { //1
public Test(String Name) { //2
name="hello"; //3
super("kitty"); //4
}
}
(选择一项)
A) 第2行错误,Test类的构造函数应有String类型的参数
B) 第3行错误,应使用super关键字调用父类的name属性,改为https://www.doczj.com/doc/8b1390189.html,="hello";
C) 第4行错误,调用父类构造方法的语句必须放在子类构造方法中的第一行
D) 程序编译通过,无错误


9.在Java中,程序员可以在子类的构造方法中使用关键字( )调用父类的构造方法。
(选择一项)
A) super
B) this
C) extends
D) implements


10.给定Java代码如下所示,则编译运行后,输出结果是( )。
class Parent{
public void count(){
System.out.println(10%3);
}
}
public class Test extends Parent{
public void count(){
System.out.println(10/3);
}
public static void main(String args[]) {
Parent p = new Test();
p.count();
}
}

(选择一项)
A) 1
B) 1.0
C) 3
D) 3.33333333333333335

相关主题
文本预览
相关文档 最新文档