《面向对象程序设计(Java)》单元测试2

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

《面向对象程序设计(Java)》单元测试2

姓名_________学号___________

一、填空与选择

1、下面程序的输出结果是:

public class ArrayTest {

public static void main (String[] args) {

String[] sa = { "Green", "Blue", "Red" };

System.out.println("Color = " + sa[1]);

}

}

2、以下语句不能通过编译的是((7))。

A. int[] a={1,2,3,4};

B. int b[];

C. int c[]=new int[3];

D. int d=new int[];

3、(在同一包中)子类不能继承父类中的成员,除此之外,其它所有的成员都可以通过继承变为子类的成员。

4、给出如下的程序,A-E选项中与构造方法ConstOver重载的两个构造方法

是:。

.public class ConstOver {

public ConstOver (int x, int y, int z) { }

}

A.ConstOver ( ) { }

B.Protected int ConstOver ( ) { }

C.Private ConstOver (int z, int y, byte x) { }

D.public Object ConstOver (int x, int y, int z) { }

E.public void ConstOver (byte x, byte y, byte z) { }

5、对于下面的两个类,BaseClass是SubCalss的,A-E选项中的(2个)

是BaseClass类getVar ( )方法的覆盖方法。

class BaseClass {

private float x = 1.0f ;

protected float getVar ( ) ( return x;)

}

class Subclass extends BaseClass {

private float x = 2.0f;

。。。。。。。。。

}

A.float getVar ( ) { return x;}

B.public float getVar ( ) { return x;}

C.float double getVar ( ) { return x;}

D.protected float getVar ( ) { return x;}

E.p ublic float getV ar (float f ) { return f;}

6、已知类关系如下:

class Employee;

class Manager extends Employeer;

class Director extends Employee;

则以下关于数据的语句正确的是:((15))。

A. Employee e=new Manager();

B. Director d=new Manager();

C. Director d=new Employee();

D. Manager m=new Director();

7、()下面对类的申明哪个是正确的?

A)public class Fred {

public int x = 0;

public Fred (int x) {

this.x = x;

}

}

B)public class fred

public int x = 0;

public fred (int x) {

this.x = x;

}

}

C)public class Fred extends MyBaseClass, MyOtherBaseClass {

public int x = 0;

public Fred (int xval) {

x = xval;

}

}

D)protected class Fred {

private int x = 0;

private Fred (int xval) {

x = xval;

}

8、()下面程序中类ClassDemo中定义了一个静态变量sum,分析程序段的输出结果。

class ClassDemo {

public static int sum=1;

public ClassDemo()

{sum=sum+5;}

}

class ClassDemoTest{

public static void main(String args[]) {

ClassDemo demo1=new ClassDemo();

ClassDemo demo2=new ClassDemo();

System.out.println(demo1.sum);

}

}

A) 0 B) 6 C) 11 D) 2

9、()下面哪个不是获得多态性技术的条件。

A)对派生类对象方法的调用必须通过基类类型的变量

B)被调用的方法必须也是基类的成员

C)在基类与派生类中这个方法的返回类型必须相同

D)在基类中必须实现被调用的方法

10、( )下面代码定义的接口中,方法MyMethod()的修饰属性为:

interface InterfaceDemo {

int MyMethod();

}

A) friendly B) public abstract C) public static abstract D)protected

11、抽象类和接口使用

interface Runner{public void run();}

interface Swimmer{public double swim();}

abstract class Animal{abstract public int eat();}

class Person extends Animal implements Runner,Swimmer{

public void run(){System.out.println("run!");}

public double swim(){int speed=20;return speed;}

public int eat(){return 3;}

}

public class Test{

public static void main(String args[]){

Test t=new Test();

Person p=new Person();

t.m1(p);

t.m2(p);

t.m3(p);

}

public void m1(Runner f){f.run();}

public void m2(Swimmer s){System.out.println(s.swim());}

public void m3(Animal a){System.out.println(a.eat());}

相关文档
最新文档