1、Java基础测试题Ps:答案已写在上面。希望大家把其他错误选项问题找出来.第一组: 1.下面哪些是合法的变量名? (DEG) A2variable /不能以数字开头 B. variable2 /不能用点和空格C. _whatavariable /不能用点和空格 D_3_ E$anothervar F#myvar /#不能用来命名 G. $_¥2.请问 “abcd” instanceof Object返回的值是? (B) A. “abcd” B. true C. false D. String 前面是后面的子类?/java 中的instanceof 运算符是用来在运行时指出对象是否是特定类的一个
2、实例。instanceof通过返回一个布尔值来指出,这个对象是否是这个特定类或者是它的子类的一个实例。3.下面说法正确的是:(A) A. 如果源代码中有package语句,则该语句必须放在代码的第一行(不考虑注释和空格); B. 如果源代码中有import语句,则该语句必须放在在代码的第一行(不考虑注释和空格) /先写包,再导入C. 如果源代码中有main()方法,则该方法必须被放在代码的第一行 /先写包D. 如果某文件的源代码中定义了一个public的接口,接口名和文件名可以不同。 4.下面有关方法覆盖说法不正确的是:(B) A. 方法覆盖要求覆盖和被覆盖的方法有相同的名字,参数列以及返回值
3、 B. 方法覆盖要求覆盖和被覆盖的方法必须具有相同的访问权限; C. 覆盖的方法不能比被覆盖的方法抛出更多的异常 D. 覆盖的方法一定不能是private的 5.一个Java程序运行从上到下的环境次序是(C) A. 操作系统、Java程序、JRE/JVM、硬件 B. JRE/JVM、Java程序、硬件、操作系统 C. Java程序、JRE/JVM、操作系统、硬件 D. Java程序、操作系统、JRE/JVM、硬件 6. 下面选项中哪个关键字可以用来修饰接口中的变量和方法?(A) A. static B. private C. synchronized D. protected 7. 下面代码段
4、中:(A) String String=”String”; /String 可以做变量名System.out.println(String); A. String B. 不知道 C. 编译出错 D. 运行出错8. 下面哪种是正确的创建Map集合的方式:(D) A. Map m=new Map(); B. Map m=new Map(init capacity, increment capacity); C. Map m=new Map(new Collection(); D. Map是接口,所以不能实例化。 9.关于被私有保护访问控制符protected修饰的成员变量,以下说法正确的是? (A
5、) A可以被三种类所引用:该类自身、与它在同一个包中的其他类、在其他包中的该类的子类 B. 可以被两种类访问和引用:该类本身、该类的所有子类 C. 只能被该类自身所访问和修改 D只能被同一个包中的类访问 10.下列有关继承的说法。正确的是:(B) A. 子类能继承父类的所有方法和属性;B. 子类能继承父类的非私有方法和属性 C. 子类只能继承父类public方法和属性 D. 子类能继承父类的方法,而不是属性。 11.对于构造方法,下列叙述正确的是:(AC) A. 构造方法的方法名必须与类名相同; B. 构造方法必须用void申明返回类型 (没有返回类型)C. 构造方法可以被程序调用 D. 若编
6、程人员没再类中定义构造方法,程序将报错。 12.为了区分类中重载的同名的不同的方法,要求:(A) A. 采用不同的形式参数列表 B. 返回值得数据类型不同 (与返回值无关)C. 调用时用类名或者对象名做前缀 D. 参数名不同 (参数列表-参数个数,参数类型)13.下面是有关子类继承父类构造函数的描述,其中正确的是:(C) A. 创建子类的对象时,先调用子类自己的构造函数,然后调用父类的构造函数。 (先调用父类的构造函数)B. 子类可以不调用父类的构造函数(子类的构造函数默能调用父类的无参数的构造函数)C. 子类必须通过super()关键字调用父类的构造函数 D. 子类无法继承父类的构造函数。
7、(同上)14. 下列说法中,正确的是:(A) A. 类是变量和方法的集合体 B. 数组是无序数据的集合 (类型(type)可以为Java中任意的数据类型,包括简单类型组合类型)C. 抽象类可以实例化 D. 类成员数据必须是公有的 第二组:1.下列不可作为java语言标识符的是(D) A) a1 B) $1 C) _1 D) 11(不能以数字开头)2.有一段java 应用程序,它的主类名是a1,那么保存它的源文件名可以是(A) 源文件扩展名是.Java) a1.java B) a1.class C) a1 D) 都对 3.整型数据类型中,需要内存空间最少的是(D) A) short (2个字节)
8、 B) long(8个字节) C) int (4个字节) D) byte (1个字节)4. Java 类可以作为(C) A) 类型定义机制 B) 数据封装机制 C) 类型定义机制和数据封装机制 D) 上述都不对 5.在创建对象时必须(C) A) 先声明对象,然后才能使用对象 B) 先声明对象,为对象分配内存空间,然后才能使用对象 C) 先声明对象,为对象分配内存空间,对对象初始化,然后才能使用对象 D) 上述说法都对 *6.在调用方法时,若要使方法改变实参的值,可以(B) A) 用基本数据类型作为参数 B) 用对象作为参数 C) A和B都对 D) A和B都不对 7. Java中(C) A) 一
9、个子类可以有多个父类,一个父类也可以有多个子类 (只可以单继承)B) 一个子类可以有多个父类,但一个父类只可以有一个子类 C) 一个子类可以有一个父类,但一个父类可以有多个子类 D) 上述说法都不对 8.Java语言具有许多优点和特点,哪个反映了Java程序并行机制的特点?(B) A) 安全性 B) 多线性 C) 跨平台 D) 可移植 *9. Character流与Byte流的区别是(C) A) 每次读入的字节数不同 B) 前者带有缓冲,后者没有 C) 前者是字符读写,后者是字节读写 D) 二者没有区别,可以互换使用 10.以下声明合法的是( D ) A、default String s; B
10、、public final static void int w( ) C、double abstract d; D、abstract final double hyperbolicCosine( ) *11.关于以下application的说明,正确的是( C ) 1 class StaticStuff 2 3 static int x=10; 4 static x+=5; 5 public static void main(String args ) 6 7 System.out.println(“x=” + x); 8 9 static x/=3; 10. A、4行与9行不能通过编译,因为
11、缺少方法名和返回类型 B、9行不能通过编译,因为只能有一个静态初始化器 C、编译通过,执行结果为:x=5 D、编译通过,执行结果为:x=3 12.关于以下程序代码的说明正确的是( D ) 1class HasStatic 2 private static int x=100; 3 public static void main(String args ) 4 HasStatic hs1=new HasStatic( ); 5 hs1.x+; 6 HasStatic hs2=new HasStatic( ); 7 hs2.x+; 8 hs1=new HasStatic( ); 9 hs1.x+;
12、 10 HasStatic.x- -; 11 System.out.println(“x=”+x); 12 13 A、 5行不能通过编译,因为引用了私有静态变量 B、 10行不能通过编译,因为x是私有静态变量 C、 程序通过编译,输出结果为:x=103 D、 程序通过编译,输出结果为:x=102 13.以下选项中循环结构合法的是( C ) A、while (int i7) i+; System.out.println(“i is “+i); B、 int j=3; while(j) System.out.println(“ j is “+j); C、int j=0; for(int k=0;
13、j + k !=10; j+,k+) System.out.println(“ j is “+ j + “k is”+ k); D、 int j=0; do System.out.println( “j is “+j+); if (j = = 3) continue loop; while (j=3;(为无符号右移运算符,去掉“=”号) C、String ts=s.trim(); D、String t=s+”!”; 13. 下列关于Java语言的特点,描述错误的是( C ) AJava是跨平台的编程语言 BJava支持分布式计算 CJava是面向过程的编程语言(面向对象) DJava支持多线程
14、 14. 下述概念中不属于面向对象方法的是( D )。 A对象、消息 B继承、多态 C类、封装 D过程调用 (过程调用是属于过程方法)15. 结构化程序设计所规定的三种基本控制结构是 ( C ) A输入、处理、输出 B树形、网形、环形 C顺序、选择、循环 D主程序、子程序、函数 16. 下列关于构造方法的叙述中,错误的是( C ) AJava语言规定构造方法名与类名必须相同 BJava语言规定构造方法没有返回值,但不用void声明 CJava语言规定构造方法不可以重载 DJava语言规定构造方法只能通过new自动调用 17. 下列哪个类的声明是正确的?( D ) Aabstract final
15、 class HI (final代表常量,但是抽象类不能实例化)Babstract private move() (这是定义方法的) Cprotected private number; (不是定义类,且修饰符重复)Dpublic abstract class Car 18. 关于被私有访问控制符private修饰的成员变量,以下说法正确的是( C ) A可以被三种类所引用:该类自身、与它在同一个包中的其他类、在其他包中的该类的子类 B可以被两种类访问和引用:该类本身、该类的所有子类 C只能被该类自身所访问和修改 D只能被同一个包中的类访问 19. 下列关于for循环和while循环的说法中哪
16、个是正确的?( B ) Awhile循环能实现的操作,for循环也都能实现 Bwhile循环判断条件一般是程序结果,for循环判断条件一般是非程序结果 C两种循环任何时候都可替换 D两种循环结构中都必须有循环体,循环体不能为空 20. 阅读以下代码: import java.io.*; import java.util.*; public class foo public static void main (String args) String s; System.out.println(s= + s); 输出结果应该是:( C ) A代码得到编译,并输出“s=” ( 代码不能编译通过)B代码得到编译,并输出“s=null” C由于String s没有初始化,代码不能编译通过 D代码得到编译,但捕获到 NullPointException异常 21. 编译运行以下程序后,关于输出结果的说明正确的是 ( C ) public class Conditional public static void main(String args ) int x=4; System.out.println(“value is “+ (x4) ? 99.9:9); A输出结果为:value is 99.9 B输出结果为:value is 9 C输出结果为:value is 9.0(判断为false
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1