面向对象程序设计习题与答案
一、单选题(共36题,每题1分,共36分)
1.以下选项中,哪一个是File类delete()方法返回值的类型()
A、boolean
B、int
C、void
D、Integer
正确答案:A
答案解析:File类delete()方法的返回值是布尔类型。
2.阅读下面的代码ClassDemo{Demo(){}}下列构造方法中,哪个构造方法可以存在上述Demo类中?()
A、publicpublicDemo(){};
B、privateDemo(){};
C、Demo(intage){};
D、Stringname(){};
正确答案:C
3.以下关于File类的isDirectory()方法的描述,哪个是正确的()
A、判断该File对象所对应的是否是文件。
B、判断该File对象所对应的是否是目录。
C、返回文件的最后修改时间。
D、在当前目录下生成指定的目录。
正确答案:B
4.下面关于ArrayList的描述中,错误的是()
A、ArrayList是List接口的一个实现类。
B、ArrayList内部的数据存储结构是数组
C、ArrayList很适合做大量的增删操作
D、使用ArrayList集合遍历和查找元素很高效
正确答案:C
5.下列关于构造方法的描述中,错误的是()
A、构造方法的方法名必须和类名一致
B、构造方法不能写返回值类型
C、构造方法可以重载
D、构造方法的访问权限必须和类的访问权限一致
正确答案:D
答案解析:构造方法权限不一定和类的访问权限一致。
6.下面关于配置path环境变量作用的说法中,正确的是()
A、在任意目录可以使用javac和java命令
B、在任意目录下可以使用class文件
C、在任意目录可以使用记事本
D、在任意目录下可以使用扫雷游戏
正确答案:A
答案解析:path环境变量的作用是在任意目录下都可以使用javac和java命令。
7.下列关于父类方法重写的描述中,错误的是()
A、如果父类方法的访问权限是public,子类重写父类该方法时的访问权限不能是private
B、子类重写父类方法时,重写的方法名、参数列表以及返回值类型必须和父类保持一致
C、如果父类的方法被final修饰,那么该方法不能被子类重写
D、子类继承父类后,可以重写父类定义的所有方法
正确答案:D
8.下面对于final的描述中,错误的是()
A、final修饰的局部变量可以被重新赋值
B、final修饰的变量被称之为常量
C、final修饰的基本数据类型变量
D、不能改变其值
正确答案:A
答案解析:final修饰的局部变量不可以被重新赋值。
9.下列关于super关键字的说法中,正确的是()
A、super关键字是在子类对象内部指代其父类对象的引用
B、super关键字不仅可以指代子类的直接父类,还可以指代父类的父类
C、子类通过super关键字只能调用父类的方法,而不能调用父类的属性
D、子类通过super关键字只能调用父类的属性,而不能调用父类的方法
正确答案:A
答案解析:super关键字是在子类对象内部指代其父类对象的引用,通过super关键字既能调用父类的属性,又能调用父类的方法。
10.“隐藏对象的属性和实现细节,仅对外提供公有的方法”描述的是面向对象的哪个特征()
A、封装
B、继承
C、多态
D、以上都不是
正确答案:A
答案解析:封装是面向对象的核心思想,将对象的属性和行为封装起来,不需要让外界知道具体实现细节,这就是封装思想。
11.下列关于classpath环境变量的说法中,哪一个是正确的()
A、classpath配置一次后可永久使用
B、没有classpath环境变量就不能运行Java程序
C、classpath环境变量可以让虚拟机找到class文件的目录
D、查看当前classpath配置的命令是:classpath
正确答案:C
答案解析:classpath环境变量可以让虚拟机找到class文件目录,没有配置classpath环境变量时,java虚拟机会自动将其设置为“.”。查看当前classpath的命令是setclasspath;
12.下列关于throws关键字的说法中,错误的是()
A、throws关键字用于抛出异常
B、可以使用throws关键字一次抛出多种类型的异常
C、使用throws关键字抛出的异常,后续调用者在使用时无需处理
D、使用throws关键字抛出异常后,程序可以编译通过
正确答案:C
13.下列关于JDK、JRE和JVM关系的描述中,正确的是()。
A、JDK中包含了JRE,JVM中包含了JRE。
B、JRE中包含了JDK,JDK中包含了JVM。
C、JRE中包含了JDK,JVM中包