mooc课程 java 期末考试试卷

发布时间 : 星期五 文章mooc课程 java 期末考试试卷更新完毕开始阅读

class Aclass{ void go(){

System.out.println(“Aclass“); } }

public class Bclass extends Aclass{ void go{

System.out.println(“Bclass“); }

public static void main(String args[]){ Aclass a=new Aclass(); Aclass a1=new Bclass(); a.go(); a1.go(); }

以上程序运行结果是:

? ? ? ?

A、Aclass Aclass B、Bclass Bclass C、Aclass Bclass D、Bclass Aclass 我的答案:C

2

在Java中,以下关于方法重载和方法重定义描述正确的是?

? ? ? ?

A、方法重载和方法的重定义实现的功能相同

B、方法重载出现在父子关系中,方法重定义是在同一类中 C、方法重载的返回值类型必须一致,参数项必须不同 D、方法重定义的返回值类型必须相同或相容。

我的答案:C

3

方法的覆盖是在子类中再次实现超类中已经实现过的方法。 我的答案:√

4

在父类中声明为final的方法,也可以在其子类中被重新定义(覆盖)。 我的答案:×

5

可以用final说明变量为一个常量。 我的答案:√

6

被final修饰符修饰的类,不能被继承。 我的答案:√

7

最终类不能派生子类,但最终方法可以被覆盖。 我的答案:×

super关键字练习已完成

1

如果子类要初始化父类的类变量,调用super语句必须:

? ? ? ?

A、放在子类构造方法第一条语句 B、放在子类构造方法任何位置 C、可以采用初始化列表方式执行 D、可以调用this关键字 我的答案:A

2

This和super都可以用在main()方法中使用 我的答案:×

上转型对象练习已完成

1

考虑以下两个类:

public class UpByOne { private int num = 0; public int getNum ( ) { return num; }

public void setNum (int x) { num = x; }

public void up ( ) { num = num + 1; } }

public class UpByTwo extends UpByOne { public void up ( ) { // missing code goes here } }

在类UpByTwo中方法up 是重定义使得num加2. 以下那段代码最合适省掉的代码?

? ? ? ?

A、num = num + 2;

B、super.up();super.up(); C、setNum(getNum()) + 2; D、super.up() + 1; 我的答案:C 错误

2

下列哪个程序片段能正确编译执行?假设类BaseWidget是类TypeAWidget的父类,并且在类TypeAWidget中定义了方法speak().

? ? ? ?

A、Object A=new BaseWidget(); A.speak(); B、BaseWidget B=new TypeAWidget(); B.speak(); C、TypeAWidget C=new BaseWidget(); D、speak(); 我的答案:B

3

Java语言里的上转型对象也即是所谓的父类给子类对象赋值而已 我的答案:×

4

上转型对象可以调用子类中基类被覆盖的方法。 我的答案:×

错误

5

Java不允许上转型对象再重新给子类对象赋值。 我的答案:√

错误

6

上转型对象可以调用子类中新的方法。 我的答案:√

错误

抽象类练习已完成

联系合同范文客服:xxxxx#qq.com(#替换为@)