(2023)JAVA基础考试题库(含参考答案)
一、选择题
1、在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
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集合中不能直接使用Iterator进行迭代
B、对map集合使用keySet方法,会得到所有value的值组成一个list集合
C、使用map的append方法可以向map集合中添加元素
D、使用removeAll方法可以将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.println(count);
A、5
B、1
C、15
D、16
8、如果需要从文件中读取数据,则可以在程序中创建哪一个类的对象( A)
A、FileInputStream
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块。
java多线程入门19、构造函数何时被调用?[参考参考答案:A]
A、创建对象时
B、类定义时
C、使用对象的方法时
D、使用对象的属性时
20、以下关于抽象类和接口的描述,错误的是()[参考参考答案:A]
A、抽象类中定义的方法必须是抽象方法
B、接口中定义的方法必须是抽象方法
C、抽象类描述同一类别、具有共同特性的事物
D、接口描述需要遵循相同约束的事物
21、下面是有关子类继承父类构造函数的描述,其中正确的是[参考参考答案:C]
A、创建子类的对象时, 先调用子类自己的构造函数,然后调用父类的构造函数
B、子类无条件地继承父类不含参数的构造函数
C、子类必须通过super关键字调用父类的构造函数
D、子类无法继承父类的构造函数
22、下列关于java中抽象类的说法正确的有(A)
A、含有抽象方法的类必须声明为抽象类
B、抽象类中不可以有非抽象方法
C、抽象类中至少需要包含一个抽象方法
D、抽象类无法实例化
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.println(“parent”);
}
}
public class Child extends Parent{ Child(String s){
System.out.println(s);
}
public static void main(String[]args){ Child child=new Child(“child”);
}
}[参考参考答案:C]
A、child
B、child

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