JAVA试题及答案(50道选择题)

java开发实战 专栏收录该内容
9 篇文章 0 订阅

JAVA试题及答案
选择题
1、 JAVA所定义的版本中不包括: ( D )
A、JAVA2 EE
B、 JAVA2 Card
C、 JAVA2 ME
D、JAVA2 HE
E、JAVA2 SE
2、 下列说法正确的是( A )
A、JAVA程序的 main 方法必须写在类里面
B、 JAVA程序中可以有多个 main 方法
C、 JAVA程序中类名必须与文件名一样
D、JAVA程序的 main 方法中如果只有一条语句,可以不用 {}(大括号 )括
起来
3、 变量命名规范说法正确的是( B )
A、变量由字母、下划线、数字、 符 号 随 意 组 成 ; B 、 变 量 不 能 以 数 字 作 为 开 头 ; C 、 A 和 a 在 j a v a 中 是 同 一 个 变 量 ; D 、 不 同 类 型 的 变 量 , 可 以 起 相 同 的 名 字 ; 4 、 下 列 j a v a D o c 注 释 正 确 的 是 ( C ) A 、 / ∗ 我 爱 北 京 天 安 门 ∗ / B 、 / / 我 爱 北 京 天 安 门 ∗ / C 、 / ∗ ∗ 我 爱 北 京 天 安 门 ∗ / D 、 / ∗ 我 爱 北 京 天 安 门 ∗ ∗ / 5 、 为 一 个 b o o l e a n 类 型 变 量 赋 值 时 , 可 以 使 用 ( B ) 方 式 A 、 b o o l e a n = 1 ; B 、 b o o l e a n a = ( 9 > = 10 ) ; C 、 b o o l e a n a = " 真 " ; D 、 b o o l e a n a = = f a l s e ; 6 、 以 下 ( C ) 不 是 合 法 的 标 识 符 A 、 S T R I N G B 、 x 3 x ; C 、 v o i d D 、 d e 符号随意组成; B、 变量不能以数字作为开头; C、 A 和 a 在 java 中是同一个变量; D、不同类型的变量,可以起相同的名字; 4、 下列 javaDoc注释正确的是( C ) A、/* 我爱北京天安门 */ B、 // 我爱北京天安门 */ C、 /** 我爱北京天安门 */ D、/*我爱北京天安门 **/ 5、 为一个 boolean 类型变量赋值时,可以使用 ( B )方式 A、boolean = 1; B、 boolean a = (9 >= 10); C、 boolean a="真"; D、boolean a = = false; 6、 以下( C )不是合法的标识符 A、STRING B、 x3x; C、 void D、de BCAajavaD4javaDocCA//B///C//D//5boolean使(B)Aboolean=1;Bbooleana=(9>=10);Cbooleana="";Dbooleana==false;6(C)ASTRINGBx3x;CvoidDdef
7、 表达式 (11+38)/4%3的值是( D )
A、31
B、 0
C、 1
D、2
8、 ( A )表达式不可以作为循环条件
A、i++;
B、 i>5;
C、 bEqual = str.equals(“q”);
D、count = = i;
9、 运算符优先级别排序正确的是( A )
A、由高向低分别是: ()、!、算术运算符、关系运算符、逻辑运算符、
赋值运算符;
B、 由高向低分别是: ()、关系运算符、算术运算符、赋值运算符、 !、
逻辑运算符;
C、 由高向低分别是: ()、算术运算符、逻辑运算符、关系运算符、 !、
赋值运算符;
D、由高向低分别是: ()、!、关系运算符、赋值运算符、算术运算符、
逻辑运算符;
10、 以下程序的运行结果是: ( B )
public class Increment{
public static void main(String args[]) {
int a;
a = 6;
System.out.print(a);
System.out.print(a++);
System.out.print(a);
}
}
A. 666
B. 667
C. 677
D. 676
11、 下列值不为 true 的表达式有( C )。
A、“john” = = “john”
B、 “john”.equals(“john”)
C、 “john” = “john”
D、
“john”.equals(new String(“john”))
12、 下列输出结果是( C )
int a = 0 ;
while ( a < 5 ) {
switch(a){
case 0:
case 3 : a = a + 2;
case 1 :
case 2 : a = a + 3;
default : a = a + 5;
}
}
System.out.print ( a ) ;
A、0
B、 5
C、 10
D、其他
13、 下列代码输出结果是 ( B )
int i = 10;
while ( i > 0 ){
i = i + 1;
if ( i = =10 ){
break;
}
}
A. while 循环执行 10 次
B. 死循环
C. 循环一次都不执行
D. 循环执行一次
14、 下面有关 for 循环的描述正确的是( A )
A、for 循环体语句中,可以包含多条语句,但要用大括号括起来
B、 for 循环只能用于循环次数已经确定的情况
C、 在 for 循环中,不能使用 break 语句跳出循环
D、for 循环是先执行循环体语句,后进行条件判断
15、 下列( A C )属于引用数据类型(选择两项)
A、String
B、 char
C、 用户自定义的 Student 类类型
D、int
16、 对象的特征在类中表示为变量,称为类的( B )。
A、对象
B、 属性
C、 方法
D、数据类型
17、 在 java中下列关于自动类型转换说法正确的是( A )
A、基本数据类型和 String相加结果一定是字符串型
B、 char 类型和 int 类型相加结果一定是字符
C、 double 类型可以自动转换为 int
D、char + int + double +"" 结果一定是 double;
18、 关于类的描叙正确的是( BD)(选择两项)
A、在类中定义的变量称为类的成员变量,在别的类中可以直接使用
B、 局部变量的作用范围仅仅在定义它的方法内,或者是在定义它的控
制流块中
C、 使用别的类的方法仅仅需要引用方法的名字即可
D、一个类的方法使用该类的另一个方法时可以直接引用方法名
19、 下列关于字符串的描叙中错误的是( BC )(选择两项)
A、字符串是对象
B、 String 对象存储字符串的效率比 StringBuffer 高
C、 可以使用 StringBuffer sb="这里是字符串 "声明并初始化 StringBuffer
对象 sb
D、String 类提供了许多用来操作字符串的方法:连接,提取,查询等
20、 以下( D )代码,能够对数组正确初始化(或者是默认初始化) 。
A、int[] a;
B、 a = {1, 2, 3, 4, 5};
C、 int[] a = new int[5]{1, 2, 3, 4, 5};
D、int[] a = new int[5];
21、 score是一个整数数组,有五个元素,已经正确初始化并赋值,仔细阅读
下面代码,程序运行结果是( B )
temp = score[0];
for (int index = 1;index < 5;index++) {
if (score[index] < temp) {
temp = score[index];
}
}
A. 求最大数
B. 求最小数
C. 找到数组最后一个元素
D. 编译出错
22、 下面关于数组的说法中,错误的是( AB )(选择两项)
A、在类中声明一个整数数组作为成员变量,如果没有给它赋值,数值
元素值为空
B、 数组可以在内存空间连续存储任意一组数据
C、 数组必须先声明,然后才能使用
D、数组本身是一个对象
23、 在 Java中,关于构造方法,下列说法错误的是 ( C )
A、构造方法的名称必须与类名相同
B、 构造方法可以带参数
C、 构造方法不可以重载
D、构造方法绝对不能有返回值
24、 执行下面代码结果( D )
for(int i=0;😉{
System.out.println("这是 "+i);
break;
}
A、 语法错误,缺少表达式 2 和表达式 3
B、 死循环
C、 程序什么都不输出
D、 输出:这是 0
25、 下面代码输出结果是( B )。
int i=0,s=0;
do{
if (i%2 = = 0 ){
i++;
continue;
}
i++;
s = s + i;
} while (i<7);
System.out.println(s);
A、 16
B、 12
C、 28
D、 21
26、 下面( C )不是 String类提供的合法的方法。
A、equals(String)
B、 trim()
C、 append() StringBuffer
D、indexOf()
27、 在 JAVA中,以下( C )类的对象以键 -值的方式存储对象
A、java.util.List
B、 java.util.ArrayList
C、 java.util.HashMap
D、java.util.LinkedList
28、 给定如下所示的 JAVA代码,则运行时,会产生( B )类型的异常
String s = null;
s.concat(“abc”);
A. ArithmeticException
B. NullPointerException
C. IOException
D. ClassNotFoundException
29、 给定 java代码如下所示,在 A 处新增下列( AC)方法,是对 cal 方法的
重载(选择两项 )
public class Test
{
public void cal(int x, int y, int z)
{
}
//A
}
A. public int cal(int x,int y,float z){return 0;}
B. public int cal(int x,int y,int z){return 0;}
C. public void cal(int x,int z){}
D. public viod cal(int z,int y,int x){}
30、 给定如下 Java 程序代码片段,编译运行这段代码,结果是( B )。
java.util.HashMap map = new java.util.HashMap();
map.put(“name”,null);
map.put(“name”,“Jack”);
System.out.println(map.get(“name”));
A. null
B. Jack
C. nullJack
D. 运行时出现异常
31、 给定以下 JAVA代码,这段代码编译运行后输出的结果是( C )
public class Test {
public static int aMethod(int i) throws Exception {
try{
return i/10;
}catch(Exception ex){
throw new Exception (“exception in a aMothod”);
}finally{
System.out.print(“finally”);
}
}
public static void main(String [] args) {
try{
aMethod(0);
}catch(Exception ex){
System.out.print(“exception in main”);
}
System.out.print(“finished”);
}

A、 finallyexception in mainfinished
B、 exception in mainfinally
C、 finallyfinished
D、 finallyexception in mainfinished
32、 在 Java中,下面对于构造函数的描述错误的是( BC )(选择两项)
A、 类不一定要显式定义构造函数
B、 构造函数的返回类型是 void
C、 如果构造函数不带任何参数,那么构造函数的名称和类名可以不同
D、 一个类可以定义多个构造函数
33、 在 Java语言中,下列关于类的继承的描述,正确的是( B )。
A、 一个类可以继承多个父类
B、 一个类可以具有多个子类
C、 子类可以使用父类的所有方法
D、 子类一定比父类有更多的成员方法
34、 下列选项中关于 Java中 super 关键字的说法正确的是( A )。
A、 super关键字是在子类对象内部指代其父类对象的引用
B、 super关键字不仅可以指代子类的直接父类,还可以指代父类的父类
C、 子类通过 super 关键字只能调用父类的方法,而不能调用父类的属性
D、 子类通过 super 关键字只能调用父类的属性,而不能调用父类的方法
35、 在 Java接口中,下列选项中有效的方法声明是( AB )。(选择二项)
A、 public void aMethod();
B、 void aMethod();
C、 protected void aMethod();
D、 private void aMethod();
36、 在 JAVA的异常处理模型中,能单独和 finally 语句一起使用的块是( A
)。
A、 try
B、 catch
C、 throw
D、 throws
37、 分析如下 Java代码,编译运行后将输出( B )。
public class Test{
public Test(){}
static void print(ArrayList al){
al.add(2);
al=new ArrayList();
al.add(3);
al.add(4);
}
public static void main(String[]args){
Test test=new Test();
ArrayList al=new ArrayList();
al.add(1);
print(al);
System.out.println(al.get(1));
}
}
A、 1
B、 2
C、 3
D、 4
38、 在 JAVA中,Object 类是所有类的父亲,用户自定义类默认扩展自 Object
类,下列选项中的( D )方法不属于 Object 类的方法。
A、 equals(Object obj)
B、 getClass()
C、 toString()
D、 trim()
39、 下列选项中关于 Java中封装的说法错误的是( D )。
A、封装就是将属性私有化,提供共有的方法访问私有属性
B、 属性的访问方法包括 setter 方法和 getter 方法
C、 setter 方法用于赋值, getter 方法用于取值
D、包含属性的类都必须封装属性,否则无法通过编译
40、 Java中,如果类 C是类 B的子类,类 B是类 A 的子类,那么下面描述正
确的是( A )
A、C不仅继承了 B中的成员,同样也继承了 A中的成员
B、 C只继承了 B中的成员
C、 C只继承了 A 中的成员
D、C不能继承 A 或 B 中的成员
41、 分析选项中关于 Java中 this 关键字的说法正确的是( A )
A、this 关键字是在对象内部指代自身的引用
B、 this 关键字可以在类中的任何位置使用
C、 this 关键字和类关联,而不是和特定的对象关联
D、同一个类的不同对象共用一个 this
42、 在 JAVA中,LinkedList类和 ArrayList类同属于集合框架类,下列( D
)选项中的方法是 LinkedList类有而 ArrayList类没有的。
A、 add(Object o)
B、 add(int index,Object o)
C、 remove(Object o)
D、 removeLast()
43、 在 JAVA中 ArrayList类实现了可变大小的数组, 便于遍历元素和随机访问
元素,已知获得了 ArrayList 类的对象 bookTypeList,则下列语句中能够实现
判断列表中是否存在字符串 “小说”的是( C )。
A、 bookTypeList.add(“小说”);
B、 bookTypeList.get(“小说”);
C、 bookTypeList.contains(“小说”);
D、 bookTypeList.remove(“小说”);
44、 给定如下 Java代码,其中第( 无答案 )行代码有错误。
A、 4
B、 5
C、 6
D、7
E、 8
F、 9
45、 以下关于布局的说法,错误的是( B )
A、BorderLayout 是边框布局,它是窗体的默认布局
B、 null 是空布局,它是面板的默认布局
C、 FlowLayout 是流布局,这种布局将其中的组件按照加入的先后顺序
从左向右排列, 一行排满之后就转到下一行继续从左至右排列
D、GridLayout 是网格布局,它以矩形网格形式对容器的组件进行布置。
容器被分成大小相等的矩形,一个矩形中放置一个组件
46、 以下用于创建容器对象的类是( AC )(选择两项)
A、Frame
B、 Checkbox
C、 Panel
D、TextField
47、 以下关于抽象类和接口的说法错误的是( E )
A、抽象类在 Java语言中表示的是一种继承关系,一个类只能使用一次
继承。但是一个类却可以实现多个接口。
B、 在抽象类中可以没有抽象方法
C、 实现抽象类和接口的类必须实现其中的所有方法,除非它也是抽象
类。接口中的方法都不能被实现
D、接口中定义的变量默认是 public static final 型,且必须给其初值,所
以实现类中不能重新定义,也不能改变其值。
E、接口中的方法都必须加上 public 关键字。
48、 关于面向对象的说法正确的是( A )
A、类可以让我们用程序模拟现实世界中的实体
B、 有多少个实体就要创建多少个类
C、 对象的行为和属性被封装在类中,外界通过调用类的方法来获得,
但是要知道类的内部是如何实现
D、现实世界中的某些实体不能用类来描述
一、单项选择题
1.下面( B )是合法的 Java 标识符。
A、#_pound B、_underscore C、5Interstate D、class
2.下面( D )赋值语句不会出现编译警告或错误。
A、float f=1.3; B、char c=“a”; C、byte b=257; D、int i=10;
3.编译一个定义了两个类和三个方法的 Java 源程序文件,总共会产生
( D )个字节码文件。
A、5 个字节码文件,以 “.java为扩展名 ” B、2 个字节码文件,以 “.java ”
为扩展名
C、5 个字节码文件,以 “.class为扩展名 ” D、2 个字节码文件,以 “.class ”
为扩展名
4.有关类的说法,正确的是( B ) 。
A、类具有封装性,所以类的数据是不能被访问的
B、类具有封装性,但可以通过类的公共接口访问类中的数据
C、声明一个类时,必须使用 public 修饰符
D、每个类中必须有 main 方法,否则程序无法运行
5.执行完下面程序片段后, ( B )的结论是正确的。
int a, b, c;
a = 1;
b = 2;
c = (a + b > 3 ? a++ : b++);
A、a 的值是 2,b 的值是 3 B、a 的值是 1,b 的值是 3
C、a 的值是 1,b 的值是 2 D、c 的值是 false
6.将类的成员的访问权限设置为默认的,则该成员能被( A ) 。
A、同一包中的类访问
B、其他包中的类访问
C、所有的类访问
D、所有的类的子类访问
7.下面的方法重载,正确的是( C ) 。
A、int fun(int a, float b) { } B、float fun(int a, float b) { }
float fun(int a, float b) { } float fun(int x, float y) { }
C、float fun(float a) { } D、float fun1(int a, float b) { }
float fun(float a, float b) { } float fun2(int a, float b) { }
8.下面关于继承的说法,正确的是( D ) 。
A、超类的对象就是子类的对象 B、一个类可以有几个超类
C、一个类只能有一个子类 D、一个类只能有一个超类
9.下面关于多态性的说法,正确的是( C ) 。
A、一个类中不能有同名的方法
B、子类中不能有和父类中同名的方法
C、子类中可以有和父类中同名且参数相同的方法
D、多态性就是方法的名字可以一样,但返回的类型必须不一样
10.关于下面程序, ( A )的结论是正确的。
class J_SubClass extends J_Test { }
public class J_Test {
J_Test(int i) {
System.out.println(i);
}
public static void main(String[] args) {
J_SubClass a = new J_SubClass();
}
}
A、不能通过编译,因为类 J_Test 没有定义无参数的构造方法
B、不能通过编译,因为类 J_SubClass 没有定义无参数的构造方法
C、不能通过编译,因为没有实现 J_SubClass(int i)的构造方法
D、可以成功通过编译
11.关于下面程序片段, ( B )的结论是正确的。
String a = “Java”;
String b = “Java”;
String x = “Ja”;
String y = “va”;
String c = x + y;
A、a 和 b 指向同一个实例对象, a 和 c 指向同一个实例对象
B、a 和 b 指向同一个实例对象, a 和 c 不指向同一个实例对象
C、a 和 b 不指向同一个实例对象, a 和 c 指向同一个实例对象
D、a 和 b 不指向同一个实例对象, a 和 c 不指向同一个实例对象
12.假设下面的程序代码都放在 MyClass.java 文件中, ( D )程序
代码能够编译通过。
A、import java.awt.
; B、package mypackage;
package mypackage; import java.awt.;
class MyClass { } public class myClass { }
C、int m; D、/This is a comment/
package mypackage; package mypackage;
import java.awt.
; import java.awt.;
class MyClass { } public class MyClass { }
13.当 需要在 文 件中写 入 字符 而不 是 字 节时 , 在 下面 的 类中 最好 选用
( B )类。
A、java.io.RandomAccessFile B、java.io.PrintWriter
C、java.io.PrintStream D、java.io.PrintOutputStream
14.关于事件监听,正确的是( C ) 。
A、一个事件监听器只能监听一个组件
B、一个事件监听器只能监听处理一种事件
C、一个组件可以注册多个事件监听器,一个事件监听器也可以注册到多个
组件上
D、一个组件只能引发一种事件
二、填空题
1. Class类是由 Java 编译器自动生成的,它伴随每个类。
2.任何一个 Java 程序都默认引入一个包,这个包的名字是 java.lang 。
3.在 Java 语言中,有一个类是所有类或接口的父类,这个类的名称是
java.lang.Object 。
4.在 Java 中所实现的二维数组,实际上是由一维数组构成的数组 。
5.在 Java 中,字符串是作为对象出现的。
6.接口可以看作是仅容纳抽象方法 、常量,而又不能直接生成对象的特殊抽
象类。
7.FileInputStream 是字节流,BufferedWriter 是字符流,ObjectOutputStream 是
对象流 。
8.在 Java 中,组件不能独立地显示出来, 必须将组件放在一定的 容器 中才
能显示。
9.Applet 是能够嵌入到 HTML 格式中的文件,并能够在浏览器中运行的
Java 类。
三、判断题
1、Java 程序一般应当含有 main 方法,因为它是所有 Java 程序执行的入口。
( × )
2、Java 语言的标识符是不区分大小写的。 ( × )
3、 Java 语言为所有的 Java 程序自动导入包 “java.lang ,” 因此 Java 程序
可以直接用 “java.lang中的类和接口。 ” 位于类继承关系层次结构树的根部
的类 Object 就是在包 “java.lang中的类。 ” ( √ )
4、有时候为了避免引起混淆,构造方法的方法名可以不与所属类名同名。
( × )
5、Java 语言规定,任何一个子类的构造方法都必须调用其父类的构造方法 (包
括隐式调用) ,并且调用父类构造方法的语句必须是子类构造方法的第一
条语句。 ( √ )
6、Java 语言对内存的释放是采用垃圾回收机制。 Java 虚拟机自动判断并收集
“垃圾” ,但一般不会立即释放它们的存储空间。 ( × )
7、在 编 译 Java 源程序时, 计算机根本不会去识别各个变量名的具体含义,
因此命名规范对编写 Java程序而言不是必要的,而且有可能会降低编写
Java 源程序的效率。 ( × )
一、单项选择题
1.作为 Java 应用程序入口的 main 方法,其声明格式可以是( A ) 。
A、public static void main(String[] args)
B、public static int main(String[] args)
C、public void main(String[] args)
D、public int main(String[] args)
2.在一个合法的 Java 源程序文件中定义了 3 个类,其中属性为 public 的类
可能有( B )个。
A、0 B、1 C、2 D、3
3.下面( B )单词是 Java 语言的关键字。
A、sizeof B、abstract C、null D、String
4.下面( C )语句不会出现编译警告或错误。
A、float f = 1.3; B、char c = “a”; C、byte b = 25; D、boolean
d = null;
5.下面程序片段输出的是( D ) 。
int i = 0, j = 9;
do {
if(i++ > --j)
break;
} while(i < 4);
System.out.println("i = " + i + " and j = " + j);
A、i = 4 and j = 4 B、i = 5 and j = 5
C、i = 5 and j = 4 D、i = 4 and j = 5
6.对于下面( B )类定义,可以通过 “new J_Class()生成类” J_Class 的
实例对象。
A、public class J_Class {
public J_Class(void) { }
}
B、public c lass J _Class { }
C、public class J_Class {
public J_Class(String s) { }
}
D、public class J_Class {
public void J_Class() { }
public J_Class(String s) { }
7.要求设计一个类,它拥有一个特殊的成员域,该成员域必须能够被这个类
的子类访问到,但是不能被不在同一个包内的其他类访问到。 下面( C )
可以满足上述要求。
A、该成员域的封装属性设置为 public
B、该成员域的封装属性设置为 private
C、该成员域的封装属性设置为 protected
D、该成员域不需要特殊的封装属性
8.关于下面程序, ( D )的结论是正确。
public class J_Test {
public static void main(String[] args) {
int[] a = new int[5];
boolean[] b = new boolean[5];
System.out.println(a[4]);
System.out.println(b[5]);
}
}
A、程序可以通过编译并正常运行,结果输出 “0false ”
B、程序可以通过编译并正常运行,结果输出 “1true ”
C、程序无法通过编译
D、程序可以通过编译,但无法正常运行
9.下面这段代码会产生( C )个 String 对象。
String s1 = “hello”;
String s2 = s1.substring(2, 3);
String s3 = s1.toString();
String s4 = new StringBuffer(s1).toString();
A、1 B、2 C、3 D、4
10.关于下面程序, ( D )的结论是正确的。
public class J_Test {
public static void main(String[] args) {
try {
return;
}
finally {
System.out.println(“1”);
}
}
}
A、上面程序含有编译错误
B、上面程序在运行时会产生一个运行时异常
C、上面程序会正常运行,但不产生任何输出
D、上面程序输出 “1”
11.用“new FileOutputStream( “data.txt 创建一个 ”,true) FileOutputStream ” 实例
对象,则下面( B )说法是正确的。
A、如果文件 “data.txt存在,则将抛出 ” IOException 异常
B、如果文件 “data.txt存在,则将在文件的末尾开始添加新内容 ”
C、如果文件 “data.txt存在,则将覆盖掉文件中已有的内容 ”
D、如果文件 “data.txt不存在,则将抛出 ” IOException 异常
12.改变当前容器的布局方式, ( A ) 。
A、调用方法 setLayout
B、容器一旦生成,它的布局方式就不能改变
C、调用方法 setLayoutManager
D、调用方法 updateLayout
13.关于小应用程序执行过程的生命周期, ( D )的结论是正确的。
A、当小应用程序从运行态进入停止态时, 首先要调用的成员方法是 pause()
B、当关闭正处于运行态的小应用程序时, 首先要调用的成员方法是 destory()
C、当小应用程序从停止态进入运行态时,首先要调用的成员方法是 paint()
D、当关闭正处于停止态的小应用程序时,首先要调用的成员方法是
destory()
14.下面( D )方法可以用来加载 JDBC 驱动程序。
A、类 java.sql.DriverManager 的 getDriver 方法
B、类 java.sql.DriverManager 的 getDrivers 方法
C、java.sql.Driver 的方法 connect
D、类 java.lang.Class 的 forName 方法
二、概念填空题
1.Java 语言通过 垃圾回收 机制简化了程序的内存管理。
2.Java 标识符是由 字母、数字、下划线、美元符号 组成的字符序列。
3.面向对象的计算机语言一般应具有 3 个基本特性,分别是 封装、继承、
多态 。
4.Java 中的 java.lang.Object 类是最顶层的类,所有其他的类都是它直接或
间接的子类。
5.在 Java 的基本数据类型中, char 类型采用 Unicode 编码方案,这样,无
论是中文字符还是英文字符,都是占 2 字节内存空间。
6.类的静态成员属于这个类的 所有对象 。
7 . 一 个 类 要 具 有 可 序 列 化 的 特 性 一 般 就 必 须 实 现 接 口
java.io.Serializable 。
8.类 String 本身负责维护一个字符串池。该字符串池存放 字符串常量 所
指向的字符串示例,以及调用过类 String 成员方法 intern 后的字符串示
例。
三、判断题
1、父类的构造方法不可以被子类继承。 ( √ )
2、在接口中定义的方法都只能是没有方法体的抽象方法。 ( √ )
3、Java 程序分成应用程序和小应用程序两类,所以一个 Java 程序不可能既
是应用程序,又是小应用程序。 ( × )
4、javadoc 是一种从文档注释生成 HTML 帮助文件的工具。它可以处理在 java
源 程 序 中 介 于 “/
和” “*/ 之” 间 的 注 释 , 并 生 成 相 应 的 程 序 文 档 。
( × )
5、采用事件适配器比采用事件监听器的执行效率要高,因为采用事件适配器
可以只处理所需处理的事件。 ( × )
6、每个 java.sql.Statement 实例对象只能对应一个 java.sql.ResultSet 实例对
象,所以如果执行 SQL 语句返回多个结果, 一般需要分多次取得返回结果。
( √ )
一、单项选择题
1.下面选项中, ( B )是 Java 关键字。
A、then B、continue C、java D、PUBLIC
2.下面语句中,正确的是( B ) 。
A、boolean b= ”true ”; B、double x=2.5f; C、char c=A”; D、float
y=0.8d;
3.设有定义 “int k=3; ,语法正确且值为 ” true 的表达式是( D ) 。
A、k=3; B、k++>3; C、k–==3&&k++==3; D、k++==3||++k>3;
4.设有定义: String s= “World,下列语句错误的是( ”; D ) 。
A、int m=s.indexOf( ‘r ’); B、char c=s.charAt(0);
C、int n=s.length(); D、String str=s.append( ‘2’);
5.假设在 Java 源程序文件 “MyClass.java中只含有一个类,而且这个类必须 ”
能够被位于个庞大的软件系统中的所有 Java 类访问到,那么下面( C )
声明有可能是符合要求的类声明。
A、private class MyClass extends Object
B、public class myclass extends Object
C、public class MyClass
D、class MyClass extends Object
6.在 Java 中,用 package 语句说明一个包时,该包的层次结构必须是
( A ) 。
A、与文件目录的层次相同 B、与文件的结构相同
C、与文件类型相同 D、与文件大小相同
7.下面关于数组的说法,错误的是( B ) 。
A、数组是最简单的复合数据类型,是一系列数据的集合
B、声明数组时,必须分配内存
C、数组的元素可以是值(基本数据类型) 、对象或其他数组
D、一个数组中的所有值都必须是相同的类型
8.下面关于方法的说法,错误的是( C ) 。
A、Java 中的方法参数传递时传值调用,而不是地址调用
B、方法体是对方法的实现,包括变量声明和 Java 的合法语句
C、如果程序定义了一个或多个构造方法,在创建对象时,也可以用系统自
动生成空的构造方法
D、类的私有方法不能被其子类直接访问
9.下面关于内部类的说法,错误的是( A ) 。
A、内部类不能有自己的成员方法和成员变量
B、内部类可用 abstract 修饰定义为抽象类, 也可以用 private 或 protected
定义
C、内部类可作为其他类的成员,而且可访问它所在类的成员
D、除 static 内部类外,不能在类内声明 static 成员
10.在字节流中,可以使用文件名作为参数的类有( C ) 。
A、DataInputStream B、BufferedReader
C、FileInputStream D、FileReader
11 . 语 句 : JTextField=new JTextField(8);, 语 句 中 的 8 表 示 文 本 框 的
( A ) 。
A、列宽 B、所显示的字符串 C、行高 D、编号
12.文档标签 @exception 在文档注释中的格式一般是( A ) 。
A、@exception 类名 描述
B、@exception 异常描述
C、@exception 异常变量名 描述
D、不存在文档标签 @exception
二、填空题
1.Java 虚拟机运行 Java 程序的基本步骤是:首先从后缀为 class 的文
件加载代码到内存中,接着在内存中检测代码的合法性和安全性,然后解
释执行合法和安全的代码。
2.在 Java 语言中,字符串直接量是用双引号括起来的字符序列, 字符串不是
字符数组,而是类 String 的实例对象。
3.类 System 的三个成员域 in、out、err 分别指向标准输入流、标准输出
流和标准错误输出流。
4.有时运行一个 Java 小应用程序需要多个文件,如 “.class文件、声音文件、 ”
图像文件等。 为了提高效率, 可以考虑将运行小应用程序所需要的各种文件做成
一个 jar 文件 。
5.假设用 Java 语言为某大学(网址为 “hznu.edu.cn )编写了图像处理包 ”
( image) , 那 么 按 照 Sun 公 司 的 建 议 , 这 个 包 的 名 称 最 好 为
cn.edu.hznu.image 。
6.在编写和运行数据库程序之前需要建立起 Java 数据库程序的开发环境, 这
至少需要安装 JDK、数据库和 JDBC 驱动程序 。
7 . 传 递 给 实 现 了 java.awt.event.MouseMotionListener 接 口 的 类 中
mouseDragged 方法的事件对象是 MouseEvent 类。
三、判断题
1、假设有一个 Java 源程序文件,它只定义了一个具有 public 属性的类
Hello,那么编译该文件的命令是 “javac Hello。 ” ( × )
2、switch 语句中可以没有 default 子句。 ( √ )
3、常量 87.363 的数据类型是 float。 ( × )
4、构造方法一般不允许有任何返回值,因此需要在构造方法返回类型处标注
为 void。 ( × )
5、如果在定义一个类的时候没有用到关键字 extends,则这个类没有直接父类。
( × )
6、抽象方法不能含有方法体,并且必须在抽象类中。 ( × )
7、如果类的访问控制符是 public,则类中成员的访问控制属性也必须是
public。 ( × )
8、假设文件 “a.txt的长度为 ” 100 字节,那么当正常运行语句 “OutputStream f =
new
FileOutputStream(new File( “a.txt 之后,文件 ”)); ” “a.txt的长度变为 ” 0 字节。
( √ )
9、 对于数组 int[][] t = {{1,2,3},{4,5,6}}来说, t.length 等于 3, t[0].length 等
于 2。 ( × )

欢迎大家进群交流学习,群里有很多资料,供大家参考。
在这里插入图片描述
群号:82546833

  • 15
    点赞
  • 1
    评论
  • 83
    收藏
  • 一键三连
    一键三连
  • 扫一扫,分享海报

相关推荐
©️2020 CSDN 皮肤主题: Age of Ai 设计师:meimeiellie 返回首页
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值