1.若在某一个类定义中定义有如下的方法: abstract void performDial( ); 该方法属于()
A.本地方法
B.最终方法
C.解态方法
D.抽象方法
2.映射 (Map) 的key和value都不可重复。( )
A.正确
B.错误
3.有以下程序片段且Interesting不是内部类,下列哪个选项不能插入到行1。( )
2.public class Interesting{
3. // 省略代码
4.}
A.import java.awt.*;
B.package mypackage;
C.class OtherClass{ }
D.public class MyClass{ }
4.下列叙述错误的是( )
A.在接口中定义的方法除了default和static关键字修饰的方法拥有方法体,其他方法都应是没有方法体的抽象方法(JDK1.8以后)
B.一个java类只能有一个父类,但可以实现多个接口
C.在类声明中,用implements关键字声明该类实现的接口
D.定义接口时使用implements关键字。
5.不考虑反射,String类型变量所指向内存空间中的内容是不能被改变的 。 ( )
A.正确
B.错误
6.下列InputStream类中哪个方法可以用于关闭流?
A.skip()
B.close()
C.mark()
D.reset()
7.对接口的描述正确的是()
A.一个类可以实现多个接口
B.接口可以有非静态的成员变量
C.在jdk8之前,接口可以实现方法
D.实现接口的任何类,都需要实现接口的方法
8.一个抽象类并不需要其中所有的方法都是抽象的。( )
A.正确
B.错误
9.下面所示的java代码,运行时,会产生()类型的异常
int Arry_a[] = new int[10];
System.out.println(Arry_a[10]);
10.以下哪些语言是面向对象的是()
A.C
B.C++
C.JAVA
D.汇编
(1)D
含有abstract关键字的方法是抽象方法,抽象方法没有方法体以分号结束,抽象类可不包含抽象方法但声明了抽象方法的类必须定义为抽象类,并且抽象类、接口都不可以实例化。子类可继承抽象父类或实现抽象父类当中的所有抽象方法(两种方法皆可)
(2)B
Map接口有两个金典的子类分别是 Hashtable 和 Hashmap。
Hashtable 线程安全,不支持key和value为空,key不能重复,但value可以重复,不支持key和value为null。
Hashmap 非线程安全,支持key和value为空,key不能重复,但value可以重复,支持key和value为null。
由于题目否定Map集合中的value都不可重复,这是错误的。
(3)D
只能有一个公共的public class,公共类。
(4)严格来讲,A、D都是错的
因为在jdk1.9中,private修饰的方法也可以有方法体。
(5)A
String类是不可改变的,实质String对象内容不可变,String对象存在于常量池中,而String引用是可以改变的,可以赋予新的对象字符串
(6)答案:B
inputstream的close方法用来关闭流
skip()用来跳过一些字节
mark()用来标记流
reset()复位流
(7)A
选项B:接口中成员变量只能是静态常量,它默认被public static final修饰。
选项C: JDK8之后,接口中才可以定义有具体实现的方法,但它要么是使用default修饰的默认方法要么是static修饰的类方法。
选项D:所有实现接口的的普通类都需要实现接口的方法,但如果实现接口的是抽象类则不需要实现所有方法。
(8)A
(9)ArrayIndexOutOfBoundsException
Array_a数组长度为10,下标是1-9,所以Array_a[10]会提示数组下标越界
(10)正确答案: B C