面向对象试题(标准答案)

发布时间 : 星期六 文章面向对象试题(标准答案)更新完毕开始阅读

CoreJavaOOP考试题

一、

选择题(不定项选择)(22*4=88) 1.

类A,B的定义如下: class A {

private int a = 100; A() {

System.out.print(\ System.out.println(a); } }

class B extends A { private int a = 200; B() {

System.out.print(\ System.out.println(a); } }

运行下面的代码: new B();

输出的结果是:( A )。 A. A() 100 B() 200 B. A() 200 B() 200 C. B() 200 A() 100 D. B() 200

A() 200

考试时间:90分钟 考试总分:100分

2. 下列说法正确的是( D )

A. 所有类都必须定义构造方法(构造器) B. 构造方法必须初始化类的所有数据成员 C. 子类定义了构造器后,不再调用父类的构造器 D. 构造方法可以访问类的非静态成员

3. 在Java中,哪个关键字使类不能派生子类?, ( A )

A : final B : public C : private D : native

4. class Base{

static void test(){ } }

public class Child extends Base{

static void test(){ }

public static void main(String[] args){ } }

A. Child.test() Child.test() B. Child.test() Base.test() C. Base.test() Child.test() D. Base.test() Base.test()

程序运行的结果是( C )

Base base = new Child(); Child child = new Child(); base.test(); child.test();

System.out.println(“Child.test()”); System.out.println(“Base.test()”);

5.下列哪些叙述是正确的( CD )

A. 在一个类中,方法不能与类名相同 B. abstract 可以修饰属性、方法和类

C. 实例方法可直接调用本类的static方法和非static方法 D. static方法不能调用非static方法

6.以下说法正确的是(ABC)

A. 子类不能继承父类的构造方法

B. 子类的构造方法可以访问父类的构造方法 C. 子类不可直接访问父类的私有属性 D. 子类可以重写父类的所有方法

7.分析选项中关于Java中this关键字的说法正确的是( A )

A.this关键字是在对象内部指代自身的引用 B.this关键字可以在类中的任何位置使用 C.this关键字和类关联,而不是和特定的对象关联 D.同一个类的不同对象共用一个this

8 下列关于继承的说法哪个是正确的 ? ( B )

A.子类只继承父类public方法和属性 B.子类继承父类的非私有属性和方法

C.子类只继承父类的方法,而不继承父类的属性 D.子类将继承父类的所有属性和方法

9.在Java中,关于final关键字的说法正确的是( AC )

A. final修饰的变量,一旦赋值就不能被更改 B. final修饰的类只能被一个子类继承 C. final修饰的方法,不能在子类中被覆盖 D. final修饰的方法,不能被子类继承

10. String s=new String(“xyz”)创建了几个对象(C);

A. 0 B. 1 C. 2 D. 3

11.下列语句的序列执行后,k的值是 ( B )

int m=3,n=6,k=0; While((m++)<(--n))++k;

A.0 B.1 C.2 D.3

12.下列哪一项不是面向对象的典型特征( D )

A. 封装 B.继承 C. 多态 D.抽象

13.(多选)在java中,关于构造方法,下列说法正确的是 A.构造方法的名称必须与类名相同 B.构造方法可以带参数 C.构造方法不可以重载 D.构造方法绝对不能有返回值

14.下面关于变量的说法正确的是( BC )

A. 实例变量可以通过类名直接调用 B. 类变量可以通过类名直接调用

C. Java中的参数传递都是值传递 D. 在不同的作用域不能定义相同的变量

15.下列代码有编译错误的是第( C )行

1) public class Test{

2) public static void main(String[] args){ 3)

int[] arr1 = new int[12];

4) char[] arr2 = new char[]; 5) int[] arr3 = {};

6) Object[] obj = new Object[4]; 7) Object obj1 = new object[9]; 8) } 9) }

ABD ) (

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