Java基础知识选择题测试(多选)
一、选择题[多选](共25题,每题2分,共50分)
1、下面的集合中,(C)不可以存储重复元素。 A ArrayList B Collection C Map(key-value,不重复) D List(有序,重复)
2、java 程序中,main 方法的书写正确的是 (CD)。
A static void main ( String[] args )
B public void main ( String[] args )
C public static void main ( String[] s )
D public static void main ( String[] args )
3、在Java中,关于继承的说法错误的是 (B) A 使用extends关键字可以实现一个类继承另一个类 B 所有的Java类都直接或间接地继承了java.lang.Object类 C 子类和父类不一定需要使用extends关键字 D 在子类的构造方法中,可以通过super关键字调用父类的构造方法
4、在Java中,以下关于static关键字的说法不正确的是 (BD) A static 可以用来修饰方法,也可以修饰属性 B 在非静态方法里可以定义static变量 C 在一个类里面用static修饰的方法,该类可以直接调用 D 在静态方法里面可以定义静态变量
5、 关于 Map 和 List ,下面说法正确的是 (BD) 。 A Map 继承 List B List 中可以保存 Map 或 List C Map 和 List 只能保存从数据库中取出的数据 D Map 的 value 可以是 List 或 Map
6、关于Java中集合的说法正确的是( A ) A List和Set接口都属于Collection接口 B List和Map接口都属于Collection接口 C Map和Set接口都属于List接口 D List、Set和Map都属于Collection接口
7、下列选项中关于Java中类的继承的说法错误的是( D ) A 使用继承可以有效的实现复用代码 B 在Java中类可以有多个直接父类,从而继承更多的功能 C 在创建一个子类对象时,会首先创建父类对象,再创建子类对象。 D 在定义一个类时,没有使用extends关键字,那么这个类将继承Object类
8、以下在Java数据库里用来作连接的对象是(D )
A java.sql.Statement类的对象
B java.sql.ResultSet类的对象
C java.sql.Driver类的对象
D java.sql.Connection类的对象
9、在Java 中,定义抽象类和抽象方法的关键字是( A ) A abstract B final C virtual D interface
10、在Java中,com包中某类的方法使用下列( B )访问修饰符修饰后,可以被com.db包中的子类访问,但不能被com.db中其他类访问 A private B protected C public D friendly
11、以下关于Java中构造方法描述正确的是(A ) A 构造方法的名字和类名相同,返回值类型为void B 在没有给类提供任何构造方法时,系统会提供一个有参数的、方法体为空的默认构造方法 C 构造方法的作用主要是在创建对象时执行一些初时化操作,可以通过重载实现多种初始化行为 D 构造方法被子类继承后可进行重写【子类不能重写父类构造方法】
12、下列代码的运行结果是 (D )
public static void main(String[] args){
int a = 7;
System.out.println(a%3);
}
A 2.0 B 2 C 1.0 D 1
13、以下对封装的描述正确的是( BD) A 只能对一个类中的方法进行封装,不能对属性进行封装 B 如果子类继承了父类,对于父类中进行封装的方法,子类仍然可以直接调用 C 封装的意义并不大,因此在编码时尽量不要使用封装 D 封装的主要作用在于对外隐藏内部实现细节,增强程序的安全性
14、在使用JDBC API实现查询数据时,执行过程中以下接口或类的使用顺序正确的是( C ) (1) Connection (2) DriverManager (3) ResultSet (4) Statement A (1) (2) (3) (4) B (2) (1) (3) (4) C (2) (1) (4) (3) D (3) (2) (1) (4)
15、下列代码中,实现获得1-100之间的随机整数是( C ) A Math.ceil(Math.random()*99)+1 B Math.ceil(Math.random()*100)-1 C Math.ceil(Math.random()*100) D Math.ceil(Math.random()*100+1)
16、下列选项中关于Java中封装的说法错误的是( D ) A 封装就是将属性私有化,提供公有的方法访问私有属性 B 属性的访问方法包括setter方法和getter方法 C setter方法用于赋值、getter方法用于取值 D 包含属性的类都必须封装属性,否则无法通过编译
17、在Java中,以下关于JDBC API错误的说法是( BD ) A PreparedStatement 可以避免SQL注入,提高了安全性 B PreparedStatement比Statement执行速度要快 C Statement中execute(String sql)方法可以执行SQL查询语句 D Statement中executeUpdate(String sql)只执行SQL更新update语句
18、在以下选项中能够返回数值21的是( B ) A Math.ceil(21.5) //天花版 B Math.floor(21.5) //地板 C Math.round(21.5) D Math.random(21)
19、在Java中,多态的实现不仅能减少编码的工作量,还能大大提高程序的可维护性及可扩展性,那么实现多态的步骤包括以下几个方法除了( ) A 子类重写父类的方法 B 子类重载同一个方法 C 定义方法时,把父类类型作为参数类型,调用方法时,把父类或子类的对象作为参数传入方法 D 运行时,根据实际创建的对象类型动态决定使用哪个方法
20、以下实体类说法错误的是( ) A 类属性的个数建议和表中的字段个数一致 B 类属性的名称建议和表中的字段的名称一致 C 类属性需要提供set和get方法 D varchar类型的表字段可以对应到java类的int类型属性
21、条件“age BETWEEN 20 AND 30”表示年龄在20到30 之间,且( )
A 包括20岁不包括30岁
B 包括20岁不包括30岁
C 不包括20岁和30岁
D 包括20岁和30岁
22、以下聚合函数求数据总和的是( B ) A MAX B SUM C COUNT D AVG
23、对于以下Java代码的运行结果描述正确的是( c ) public classTest { private static final int flag=1; public static void main(String[] args) { for(int i=0;i<100;i++){ System.out.println(flag++); } } } A 程序运行100次,分别输出0到99 B 程序运行101次,分别输出0至100 C 程序编译错误 D 程序可能出现死循环
24、运行以下Java代码,正确的输出结果是( ) public static void main(String[] args) { Map <String,String> s =newHashMap <String,String> (); for(int i=0;i<3;i++){ s.put(''+i+'', 'stu'+i+''); } System.out.println(s.get('1')); } A stu0 B stu1 C stu2 D stu3
25、阅读如下Java代码,执行结果是( D ) public class Test { public static void main(String[] args) { try{ String s=null; s=s.toLowerCase(); } catch(ArithmeticException e) { System.out.println('ArithmeticException'); } catch(NumberFormatException e){ System.out.println('NumberFormatException'); } } } A ArithmeticException B NumberFormatException C Exception D 没有输出任何内容,显示NullPointerException异常信息内容:
答案: 1、C 2、C、D 3、B 4、B、D 5、B、D 6、A 7、D 8、D 9、A 10、B 11、A 12、D 13、B、D 14、C 15、A 16、D 17、B、D 18、B 19、B 20、D 21、A 22、B 23、C 24、B 25、D
原文地址: https://www.cveoy.top/t/topic/pcV1 著作权归作者所有。请勿转载和采集!