第一章 单元测试
1、判断题:
Java程序可以直接编译为适用于本地计算机的机器码。
选项:
A:对
B:错
答案: 【错】
2、判断题:
Java是一种不区分大小写的编程语言。
选项:
A:错
B:对
答案: 【错】
3、单选题:
Java不包括( )特点。
选项:
A:
面向过程
B:
分布性
C:
可移植性
D:
平台无关性
答案: 【
面向过程
】
4、单选题:
Java源程序的扩展名为( )
选项:
A:
.java
B:
.class
C:
.js
D:
.jav
答案: 【
.java
】
5、单选题:
Java编译成功后生成文件的扩展名为( )
选项:
A:
.js
B:
.java
C:
.class
D:
.jav
答案: 【
.class
】
第二章 单元测试
1、单选题:
下列标识符名称不合法是( )
选项:
A:
square
B:
_123
C:
$main
D:
true
答案: 【
true
】
2、单选题:
下列选择中,不属于Java语言的简单数据类型的是( )
选项:
A:
字符型
B:
整数型
C:
数组
D:
浮点型
答案: 【
数组
】
3、单选题:
下列名称不是Java语言中的关键字的是( )
选项:
A:
if
B:
sizeof
C:
private
答案: 【
sizeof
】
4、判断题:
在Java程序中要使用一个变量,必须先对其进行声明( )
选项:
A:对
B:错
答案: 【对】
5、判断题:
以0x或0X开头的整数(如0x45)代表八进制整型常量( )
选项:
A:对
B:错
答案: 【错】
第三章 单元测试
1、判断题:
简单if结构是顺序程序结构
选项:
A:错
B:对
答案:
2、判断题:
多重if-else分支结构中的大括号不能省略
选项:
A:错
B:对
答案:
3、判断题:
switch case结构中的default为必选参数,必须得写上,否则程序会出错
选项:
A:对
B:错
答案:
4、单选题:
在流程图中,下面说法正确的是( )
选项:
A:
“长方形’表示程序开始/结束
B:
“跑道形”表示判断分支
C:
”菱形”表示计算步骤/处理过程符号
D:
“平行四边形”表示输入/输出指令(或数据)
答案:
5、单选题:
下列关于if选择结构和switch选择结构的说法正确的是( )
选项:
A:
多重if-else选择结构中的else语句是必须的
B:
嵌套if-else选择结构中不能包含else语句
C:
switch选择结构中的default可选
答案:
第四章 单元测试
1、判断题:
continue语句用在循环结构中跳过当次continue下面的语句继续执行下一次循环
选项:
A:错
B:对
答案:
2、判断题:
嵌套循环的次数为外循环的次数加上内循环的执行次数
选项:
A:错
B:对
答案:
3、单选题:
运行下面的程序将输出( )次“我爱中国”
public class China{
public static void main(String[] args){
int i=1;
do{
System.out.println(“我爱中国”);
}while(i<5);
}
}
选项:
A:4
B:死循环
C:0
D:5
答案:
4、单选题:
阅读下面的程序片断,输出结果是( )
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.println(a);
选项:
A:其他
B:0
C:5
D:10
答案:
5、单选题:
阅读下列代码,如果输入的数字是6,正确的运行结果是( )
import java.util.*;
public class Test{
public static void main(String[] args){
Scanner input=new Scanner(System.in);
System.out.print(“请输入1个1-10之间的数”);
int number =input.nextInt();
for(int i=1;i<=10;i++){
if((i+number)>10){
break;
}
System.out.print(i+” ”);
}
}
}
选项:
A:
1 2 3 4 5 6
B:
1 2 3 4
C:
5 6 7 8
D:
7 8 9 10
答案:
第五章 单元测试
1、判断题:
int[][] x = new int[3][5]; 所定义的二维数组对象含有15个int型元素。
选项:
A:错
B:对
答案:
2、判断题:
Java中不能创建不等长的二维数组。
选项:
A:对
B:错
答案:
3、单选题:
某个main()方法中有以下代码:
double[] num1;
double num3=2.0;
int num2=5;
num1=new double[num2+1];
num1[num2]=num3;
请问以上程序编译运行后的结果是( )
选项:
A:
num2指向一个有5个元素的int型数组
B:
num1数组的第3个元素的值为5
C:
num1指向一个有5个元素的double型数组
D:
num1数组的最后一个元素的值为2.0
答案:
4、单选题:
以下数组初始化形式正确的是( )
选项:
A:
int t2[][]={1,2,3,4,5,6}
B:
int t1[][]={{1,2},{3,4},{5,6}}
C:
int t3[3][2]={1,2,3,4,5,6}
D:
int t4[][]
t4={1,2,3,4,5,6};
答案:
5、单选题:
下列关于Java语言的数组描述中,错误的是( )
选项:
A:
数组元素是按顺序存放在内存的
B:
数组的长度通常用length表示
C:
数组下标从0开始
D:
数组空间大小可以任意扩充
答案:
第六章 单元测试
1、单选题:
下面关于构造方法的调用,正确的是( )。
选项:
A:
构造方法在类定义的时候被调用
B:
构造方法在使用对象的变量时被调用
C:
构造方法在调用对象方法时被调用
D:
构造方法在创建对象的时候被调用
答案:
2、单选题:
关于对象成员占用内存的说法哪个正确?( )
选项:
A:
其他都不对
B:
同一个类的对象共用同一段内存
C:
同一个类的对象使用不同的内存段,但静态成员共享相同的内存空间
D:
对象的方法不占用内存
答案:
3、判断题:
在成员方法中出现的this关键字,代表的是调用这个方法的对象。( )
选项:
A:对
B:错
答案:
4、单选题:
下列程序的运行结果是( )
class Demo{
private String name;
Demo(String name){this.name = name;}
private static void show(){
System.out.println(name)
}
public static void main(String[] args){
Demo d = new Demo(“lisa”);
d.show();
}
}
选项:
A:
输出lisa
B:
输出name
C:
编译失败,无法从静态上下文中引用非静态变量name
D:
输出null
答案:
5、单选题:
下列哪个选项的java源文件代码片段是不正确的( )
选项:
A:
import java.io.*;
import java.awt.*;
public class Test{ }
B:
C. import java.io.*;
package mypackage;
public class Test{ }
C:
import java.io.*;
class Person{ }
D:
package mypackage;
public class Test{ }
答案:
第七章 单元测试
1、单选题:
给定如下一个Java源文件Child.java,编译并运行Child.java,以下结果正确的是( )。
class Parent1 {
Parent1(String s){
System.out.println(s);
}
}
class Parent2 extends Parent1{
Parent2(){
System.out.println(‘parent2’);
}
}
public class Child extends Parent2 {
public static void main(String[] args) {
Child child = new Child();
}
}
选项:
A:
编译错误:没有找到构造器Parent1()
B:
正确运行,输出结果为:parent2
C:
编译错误:没有找到构造器Child()
D:
正确运行,没有输出值
答案:
2、单选题:
在Java类中,使用以下( )声明语句来定义公有的int型常量MAX。
选项:
A:
public int MAX = 100;
B:
final int MAX = 100;
C:
public static final int MAX = 100;
D:
public static int MAX = 100;
答案:
3、判断题:
子类可以继承父类里的所有变量和方法,包括私有的属性和方法。( )
选项:
A:错
B:对
答案:
4、判断题:
抽象方法必须在抽象类中,所以抽象类中的方法都必须是抽象方法。
选项:
A:对
B:错
答案:
5、单选题:
关于构造方法,下面说法错误的是()。
选项:
A:
父类只有一个带参的构造方法,子类必须显示声明带参构造方法
B:
子类无参构造方法不可以用super(int a);调用父类对应的带参构造方法
C:
实例化一个类的对象时,一定会先调用java.lang.Object的构造方法
D:
子类无参构造方法中没有写super();不会调用父类无参构造方法
答案:
第八章 单元测试
1、单选题:
给出下面程序,正确的叙述是( )。
class A {
void a(){ System.out.println(“a”); } }class B extends A {
void a() { System.out.println(“b”); }
public static void main(String[] args) {
A x = new B(); x.a(); } }
选项:
A:
编译成功,输出b
B:
编译失败
C:
其他答案都不对
D:
编译成功,输出a
答案:
2、单选题:
已知类的继承关系如下:
class A
class B extends A
class C extends A
则以下语句能通过编译的是( )。
选项:
A:B b=new C();
B:A a=new B();
C:C c=new B();
D:C c=new A();
答案:
3、判断题:
上转型对象能调用继承或重写的方法,也能调用子类新增的方法。( )
选项:
A:对
B:错
答案:
4、多选题:
在Java中,多态的实现不仅能减少编码的工作量,还能大大提高程序的可维护性及可扩展性,那么实现多态的步骤包括以下几个方面( )。
选项:
A:
子类重载同一个方法
B:
子类重写父类的方法
C:
定义方法时,把父类类型作为参数类型;调用方法时,把父类或子类的对象作为参数传入方法
D:
运行时,根据实际创建的对象类型动态决定使用哪个方法
答案:
5、判断题:
任何类的对象都可以赋值给一个Object对象。
选项:
A:对
B:错
答案:
第九章 单元测试
1、单选题:
以下接口定义错误的是( )。
选项:
A:
interface Flyer { void fly();}
B:
interface Flyer extends F1, F2 { abstract void fly();}//F1、F2为已定义的接口
C:
interface Flyer extends F1 { void fly();}//F1是已定义的接口
D:
interface Flyer { void print(){ };}
答案:
2、单选题:
以下关于继承的叙述正确的是( )。
选项:
A:
在Java中一个类只能实现一个接口
B:
在Java中类只允许单一继承
C:
在Java中接口只允许单一继承
D:
在Java中一个类不能同时继承一个类和实现一个接口
答案:
3、单选题:
下列叙述中,错误的是( )。
选项:
A:
Java中,方法的重载是指多个方法可以共同一个名字
B:
Java中,接口不包含成员变量和方法的实现
C:
Java中,构造方法可以有返回值
D:
Java中,用abstract修饰的类称为抽象类它不能实例化
答案:
4、判断题:
在Java程序中,通过类的定义只能实现单重继承,但通过接口的定义可以实现多重继承关系。
选项:
A:错
B:对
答案:
5、判断题:
抽象类可以有构造方法,接口中不能有构造方法。
选项:
A:对
B:错
答案:
第十章 单元测试
1、单选题:
下列能单独和finally一起使用的关键字是( )
选项:
A:
throw
B:
throws
C:
catch
D:
try
答案:
2、单选题:
( )代码块可以有效地防止内存泄漏
选项:
A:
try
B:
finally和catch
C:
finally
D:
catch
答案:
3、单选题:
( )类是所有异常类的父类
选项:
A:
Error
B:
AWTError
C:
Exception
D:
Throwable
答案:
4、判断题:
如果try块之后没有catch块,则必须有finally块
选项:
A:错
B:对
答案:
5、判断题:
程序员把可能产生异常的代码封装在try块中,try块后面就只能跟一个catch块
选项:
A:对
B:错
答案:
第十一章 单元测试
1、判断题:
每个事件类对应一个事件监听器接口,每一个监听器接口都有相对应的适配器。
选项:
A:对
B:错
答案:
2、判断题:
在Swing用户界面的程序设计中,容器可以被添加到其他容器中去。
选项:
A:错
B:对
答案:
3、单选题:
当容器需要为某个组件定位或者决定组建大小的时候,便会请求( )完成相应的工作
选项:
A:
Java虚拟机
B:
布局管理器
C:
环境管理器
D:
操作系统
答案:
4、单选题:
通过( )方法可以将组件加入容器并显示出来
选项:
A:
insert
B:
add
C:
make
D:
create
答案:
5、单选题:
JPanel默认的布局管理器是( )
选项:
A:
GridLayout
B:
CardLayout
C:
BorderLayout
D:
FlowLayout
答案:
第十二章 单元测试
1、判断题:
文件缓冲流的作用是提高文件的读/写效率
选项:
A:错
B:对
答案:
2、单选题:
下列属于文件输入输出流的是( )
选项:
A:
FileInputStream和FileOutputStream
B:
BufferInputStream和BufferOutputStream
C:
其他选项都是
D:
PipedInputStream和PipedOutputStream
答案:
3、单选题:
字符流与字节流的区别在于( )
选项:
A:
前者是块读写,后者是字节读写
B:
二者没有区别,可以互换使用
C:
前者带有缓冲,后者没有
D:
每次读写的字节数不同
答案:
4、单选题:
当文件不存在或不可读时,使用FileInputStream读取文件会报下列哪一种错误( )
选项:
A:
NoSuchFieldException
B:
RuntimeException
C:
FileNotFoundException
D:
NullPointerException
答案:
5、单选题:
下面关于字节流缓冲区的说法错误的是( )
选项:
A:
字节流缓冲区就是一块内存,用于存放暂时输入输出的数据。
B:
使用字节流缓冲区读写文件时,可以一次性读取多个字节的数据。
C:
使用字节流缓冲区读写文件,可以大大的提高文件的读写操作。
D:
使用字节流缓冲区读写文件是一个字节一个字节的读写。
答案:
第十三章 单元测试
1、判断题:
Map接口的主要实现类有HashMap和TreeMap。
选项:
A:错
B:对
答案:
2、判断题:
当向HashSet集合中添加一个对象时,首先会调用该对象的hashCode方法来计算对象的哈希值。
选项:
A:对
B:错
答案:
3、单选题:
阅读下面代码
import java.util.ArrayList;
public class Demo {
public static void main(String[] args) {
ArrayList list = new ArrayList();
list.add(“aaa”);
list.add(“bbb”);
list.add(“ccc”);
for (Object obj : list) {
if (obj.equals(“bbb”)) {
list.remove(obj);
}
}
System.out.println(list);
}
}
下列选项中,哪一个是程序执行后的结果( )
选项:
A:
[aaa,bbb,ccc]
B:
[]
C:
其他都不对
D:
[aaa,ccc]
答案:
4、单选题:
下列方法中,不能用于删除Collection集合中元素的是( )
选项:
A:
removeAll()
B:
isEmpty()
C:
remove()
D:
clear()
答案:
5、单选题:
下列关于ArrayList的描述中,错误的是( )
选项:
A:
ArrayList集合可以看作一个长度可变的数组。
B:
ArrayList集合中的元素索引从1开始。
C:
ArrayList集合不适合做大量的增删操作。
D:
ArrayList集合查找元素非常便捷。
答案:
第十四章 单元测试
1、单选题:
如果在关闭Socket时发生一个I/O错误,则会抛出( )异常。
选项:
A:
IOException
B:
UnkwonHostException
C:
SocketException
D:
MalformedURLException
答案:
2、单选题:
使用( )类建立一个Socket,用于不可靠的数据报的传输。
选项:
A:
Applet
B:
DatagramSocket
C:
AppletContext
D:
InetAddress
答案:
3、单选题:
InetAddress类的getLocalHost()方法返回一个( )对象,它包含了运行该程序的计算机的主机名
选项:
A:
OutputStream
B:
InputStream
C:
DatagramSocket
D:
InetAddress
答案:
4、判断题:
TCP是面向连接的通信协议
选项:
A:错
B:对
答案:
5、判断题:
数据报传输是可靠的,并一定按发出的先后顺序到达目标
选项:
A:错
B:对
答案:
请先
!