一、单项选择题
1.下列不属于面向对象编程的特性的是(  C )。
A.封装                        B.继承
C.抽象                        D.多态
java面向对象的特征有哪些方面
2.(*)下述概念中不属于面向对象的是( D  )。
A.对象、消息                  B.继承、多态
C.类、封装                    D.过程调用
3.(*)对象是Java中很重要的概念,下列说法中能准确地描述对象的是( A  )。
A.对象可以理解为一种数据结构,具有操作数据的方法
B.对象是抽象的,类可以通过对象来生成
C.对象只是方法的集合
D.对象是一组具有共同的结构和行为的类
4.(*)下面有关变量及其作用域的陈述哪一项是错误的?(  D )
A.在方法里面定义的局部变量在方法退出的时候被撤销
B.局部变量只在定义它的方法内有效
C.在方法外面定义的实例变量在对象被构造时创建
D.在方法中定义的方法的参变量只要该对象被需要就一直存在
5.下列类的声明中不合法的是( C  )。
A.class Flower{ }
B.class中国人 { }
C.privateclass SuperStar { }
D.public classA { }
6.下列方法的声明中不合法的是(  B )。
A.float play(){ return 1; }
B.void play(intd,e) { }
C.double play(intd) { return 2.0; }
D.int play(intr) { return 1; }
7.下列哪个方法不能与方法publicvoid add(int a){ }重载?(  A )
A.public intadd(int b) { }
B.public voidadd(double b) { }
C.public voidadd(int a, int b) { }
D.public voidadd(float g) { }
8.类Test定义如下:
1.public classTest {
2.    float use(float a, float b) {
3.    }
4. 
5.}
将以下哪种方法插入第4行是不合法的?(  B )
A.float use(floata, float b, float c) {  }
B.float use(floatc, float d) {  }
C.int use(int a,int b) {  }
D.float use(inta, int b, int c) {  }
9.为了区分重载多态中同名的不同方法,要求( A  )。
A.采用不同的参数列表
B.返回值类型不同
C.调用时用类名或对象名做前缀
D.参数名不同
10.下列有关构造方法描述正确的是(  D )。
A.所有类都必须定义一个构造方法
B.构造方法必须有返回值
C.构造方法必须访问类的非静态成员
D.构造方法可以初始化类的成员变量
11.下列关于构造方法的叙述中,错误的是( C  )。
A.构造方法名与类名必须相同
B.构造方法没有返回值,但不用void声明
C.构造方法不可以重载
D.构造方法只能通过new自动调用
12.设A为已定义的类名,下列声明对象a的语句中正确的是( C  )。
A.public A a =new A( );
B.A a = A( );
C.A a = new A();
D.a A;
13.给出如下类定义:
public class Test {
Test(int i) {
}
}
如果要创建一个该类的对象,正确的语句是(  B  )。
A.Test t = newTest();
B.Test t = newTest(5);
C.Test t = newTest("5");
D.Test t = newTest(3.4);
14.(*)下面哪些说法是正确的?( C  )
A.用new运算符来创建的对象,在JVM退出时才会被当做垃圾回收
B.判断一个对象是否可以被垃圾回收的条件为是否还有对该对象的引用
C.Java方法的参数传递规定,使用new来创建的对象为地址传递
D.Java方法支持重载,但方法必须至少参数或返回值的类型不同
15.以下代码的调试结果为( c  )。
class Square {
    int a;
    void Square() {
        a = 10;
    }
    public static void main(String[] args) {
        Square s = new Square();
        System.out.println(s.a);
    }
}
A.输出10                      B.编译错误
C.输出0                        D.运行错误
16.下面程序的输出结果是( A)。
class Test {
    int i = 2;
    String s = null;
    void Test() {
        i = 3;
        s = "days";
    }
    public static void main(String args[]) {
        Test t = new Test();
        System.out.println(t.i + t.s);
    }
}
A.2null                        B.3null
C.3days                        D.以上都不对
17.下列关于变量的叙述哪个是错误的?(  C)
A.实例变量是类的成员变量
B.在方法中定义的局部变量在该方法被执行时创建
C.实例变量用关键词static声明
D.局部变量在使用前必须被初始化
18.如下代码的输出结果是( C  )。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。