2023年JAVA基础考试题及答案
一、选择题
1、下列关于java中抽象类的说法正确的有 (A)
A、含有抽象方法的类必须声明为抽象类
B、抽象类中不可以有非抽象方法
C、抽象类中至少需要包含一个抽象方法
D、抽象类无法实例化
2、下列哪个关键字可以用于实现同步 (C)
A、native
B、static
C、synchronized
D、finalize
3、下列哪些集合属于Collection的子类 (C D) [选两项]
A、TreeMap
B、Hashtable
C、ArrayList
D、HashSet
4、下面关于线程的说法错误的是 (B)
A、线程其实就是进程中的一个控制单元,它负责就是程序的执
行。 一个进程中至少有一个线程
B、当一个类实现了Runnable接口后,并实现了其run方法,就
可以直接调用这个类的start方法开启线程
C、继承Thread类或者实现Runnable接口都可以封装线程要执行
的任务
D、Thread类本身就是一个线程类,可以直接创建Thread类对象
,开启线程
5、下面关于map集合说法正确的是 (A)
A、map集合中不能直接使用lterator进行迭代
B、对map集合使用keySet方法,会得到所有value的值组成一个
list集合
C、使用map的append方法可以向map集合中添加元素
D、使用removeAl 方法可以将map集合中的元素清空
6下列哪个方法可以使线程从运行状态进入其他阻塞状态 (A B
)
A. sleep B. wait C. yield D. start
7、下面的代码段执行之后count的值是什么() int count =
1;(D)
for(int i =1;i<=5;i++){ count += i;}
System.out.printIn(count);
A、5 B、1 C、15 D、16
8、如果需要从文件中读取数据,则可以在程序中创建哪一个类 的对象( A)
A、FilelnputStream B、FileOutputStream
C、DataOutputStream D、FileWriter
9、 以下对接口描述错误的有(D)
A) 接口没有提供构造方法
B) 接口中的方法默认使用public、abstract修饰
C) 接口中的属性默认使用public、static、final修饰
D) 接口不允许多继承
10、以下关于final关键字说法错误的是(A C )(两项)
A)
final是java中的修饰符,可以修饰类、接口、抽象类、方法和 属性
B) final修饰的类肯定不能被继承
C)final 修饰的方法不能被重载
D)final修饰的变量不允许被再次赋值
11、构造ArrayList类的一个实例,此类继承了List接口,下列 哪个方法是正确的 (B )。
(A)ArrayList myList=new Object() (B)List
myList=new ArrayList()
(C)ArrayList myList=new List() (D)List myList=new
List()
12、
如果一个类的成员变量只能在所在类中使用,则该成员变量必 须使用的修饰是 (C)
(A) public(B) protected
(C) private(D) static
13、 以下关于继承的叙述正确的是 (A )。
A 、在Java 中类只允许单一继承
B 、在Java 中一个类只能实现一个接口
C 、在Java 中一个类不能同时继承一个类和实现一个接口
D 、在Java 中接口只允许单一继承
14、 以下有关构造方法的说法,正确的是: (A)
A. 一个类的构造方法可以有多个 B
.构造方法在类定义时被调用
C. 构造方法只能由对象中的其它方法调用。 D
.构造方法可以和类同名,也可以和类名不同
15、请问所有的异常类皆继承哪一个类? (B )。
A、java.io.Exception B、java.lang.Throwable
C、java.lang.Exception D、java.lang.Error
16、 以下关于break语句的描述,只有 是正确的[参考答案:C
]
A、在循环语句中必须使用break语句
B、break语句只能用于switch语句中
C、在循环语句中可以根据需要使用break语句
D、break语句可以强制跳出所有循环
17、语句int k=1;while (k++<10);执行后,变量k的值是(
)。[参考答案:B]
A、10
B、11
C、9
D、无限循环,值不定
18、在java中,关于switch的说法正确的是()[参考答案:B]
A、switch()括号里必须放一个整数常量或字符型常量
B、case后必须是一个整形或字符型的常量表达式
C、default 表示不考虑其他case语句,优先执行
D、break表示跳出当前case块,继续执行其他case块。
19、构造函数何时被调用?[参考答案:A]
A、创建对象时
B、 类定义时
C、使用对象的方法时
D、使用对象的属性时
20、 以下关于抽象类和接口的描述,错误的是(
)[参考答案:A]
A、抽象类中定义的方法必须是抽象方法
B、接口中定义的方法必须是抽象方法
C、抽象类描述同一类别、具有共同特性的事物
D、接口描述需要遵循相同约束的事物
21、下面是有关子类继承父类构造函数的描述,其中正确的是[ 参考答案:C]
A、创建子类的对象时,
先调用子类自己的构造函数,然后调用父类的构造函数
B、子类无条件地继承父类不含参数的构造函数
C、子类必须通过super关键字调用父类的构造函数
D、子类无法继承父类的构造函数
22、 在Java中,已定义两个接口B 和C
要定义一个实现这两个接口的类,以下语句正确的是[参考答 案:C]
A、interface A extends B,C
B、interface A implements B,C
C、class A implements B,C
D、class A implements B, implements C
23、 面向对象方法的多态性是指[参考答案:C]
A、一个类可以派生出多个特殊类
B、一个对象在不同的运行环境中可以有不同的变体
C、拥有相同父类或接口的不同对象可以以适合自身的方式处理
同一件事
D、一个对象可以是由多个其他对象组合而成的
24、Dog是Animal的子类,下面代码错误的是[参考答案:C]
A、Animal a = new Dog();
B、Animal a =(Animal )new Dog();
C、Dog d = new Animal();
D、Object o = new Dog();
25、 以下构成方法重载的是()。(两项)[参考答案:B,C]
A、public void add(int x,int y){}
public void add(int a,int b){}
B、public int add(int x,int y){}
public void add(int x,int y,int z){}
C、public String add(int x,int y){}
public String add(Long x){}
D、public void add(int x,int y,int z){}
public void add1(String a,String b,String c){}
26、一个java源文件, Child.java,代码如下:运行后正确的输
出结果是 (C)
class Parent{
Parent(){
System.out.printIn(“parent”);
public class Child Child(String s){
System.out.printIn(s);
}
public static void
Child child=new
extends Parent{
main(String[]args){
Child(“child”);
}[参考答案:C]
A、child
B、child
parent
C、parent
child
D、编译错误
27、 在Java中,下列关于方法重载的说法中错误的是( )(两项)[参考答案:C,D]
A、方法重载要求方法名称必须相同
B、重载方法的参数列表必须不一致
C、重载方法的返回类型必须一致
D、一个方法在所属的类中只能被重载一次
28、 下列哪个不属于java中的基本数据类型()?[参考答案:B]
A、 int
B、String
C、float
D、char
29、 在java语言中有如下代码: D
switch(x){
case
case
100:System.out.printIn("One 200:System.out.printIn("Two
hundred");break;
hundred");break;
case 300:System.out.println("Three hundred"); break; }下列x的定义中, ()可以使得以上代码编译通过;[]
A、double x=100;
B、char x=100;
C、String x="100";
D、int x=100;
30、 关于接口哪个正确? ( A)
A、实现一个接口必须实现接口的所有方法
B. 一个类只能实现一个接口 C. 以上都是
31、 下列流中哪个不属于字节流 (D )
A. FilelnputStream B. BufferedInputStream
C. FilterInputStream D. InputStreamReader
32、Java语言具有许多优点和特点,下列选项中,哪个反映了Jav a程序并行机制的特点: ( B C)
A、全性 B、 多线程
C、跨平台 D、 可移值
33、 如要抛出异常,应用下列哪种子句? (B)
A、catch B、throws
C、try D、finally
34、 要想定义一个不能被实例化的类,在类定义中必须加上修 饰符(A D )。
A、final B、 public C、private D、abstract
35、string哪个方法是分割字符