第一章 单元测试
1、单选题:
Java程序的基础开发环境是( )。
选项:
A:JRE
B:Eclipse
C:Netbeans
D:JDK
答案: 【JDK
】
2、单选题:
构成Java程序的基本单位是( )。
选项:
A:Java方法
B:Java变量
C:Java类
D:其他三个都对
答案: 【Java类
】
3、单选题:
运行下面的程序将输出结果( )。
public class Test{
public static void main(String[] args){
int a = 3 + 8, b = a;
System.out.println(a);
a = 20;
System.out.println(a);
System.out.println(b);
}
}
选项:
A:
20
20
20
B:
11
20
20
C:
11
20
11
D:
20
20
11
答案: 【
11
20
11
】
4、判断题:
在一个Java程序中最多只可以在一个类中申明程序运行的入口main方法。( )
选项:
A:对
B:错
答案: 【错】
5、多选题:
下面说法中正确的是( )。
选项:
A:一个名称为Point.java的文件经过编译之后会生成一个Point.class文件
B:JRE是运行Java程序的环境
C:开发Java程序的过程是首先编写源程序;然后编译源程序成字节码文件;最后加载、解释执行
D:JDK是开发Java程序的最基本环境
答案: 【一个名称为Point.java的文件经过编译之后会生成一个Point.class文件
;JRE是运行Java程序的环境
;开发Java程序的过程是首先编写源程序;然后编译源程序成字节码文件;最后加载、解释执行
;JDK是开发Java程序的最基本环境
】
第二章 单元测试
1、单选题:
已知变量a的值是null,那么a的类型可能是( )。
选项:
A:都有可能
B:String
C:System
D:Integer
答案: 【都有可能
】
2、单选题:
下面关于Java类的申明正确的选项是( )。
选项:
A:public class Circle{
double r;
r = 0.0;
}
B:都正确
C:public class Point{
public point(){}
}
D:class Bean{}
答案: 【class Bean{}
】
3、判断题:
根据语句Point p = new Point();可知Point类至少显式申明了一个构造方法。( )
选项:
A:对
B:错
答案: 【错】
4、多选题:
已知Point类申明如下,下面说法正确的是( )。
public class Point{
int x, y;
public Point copy(){return null;}
public double distance(Point p){
return Math.sqrt((this.x-p.x)*(this.x-p.x) + (this.y-p.y)*(this.y-p.y));
}
}
选项:
A:Point类只有一个构造方法
B:distance方法执行时有可能产生空指针异常
C:语句Point p = new Point().copy();在语法上是正确的
D:Point类的申明中存在语法错误
答案: 【Point类只有一个构造方法
;distance方法执行时有可能产生空指针异常
;语句Point p = new Point().copy();在语法上是正确的
】
5、多选题:
根据如下程序片段选择正确的说法( )。
选项:
A:程序运行时可能产生空指针异常
B:Point类一定显式申明了构造方法
C:p1.getInfo()和p2.getInfo()的返回值可能相同也可能不同
D:Point类中move方法的返回类型是void
答案: 【程序运行时可能产生空指针异常
;Point类一定显式申明了构造方法
;p1.getInfo()和p2.getInfo()的返回值可能相同也可能不同
】
第三章 单元测试
1、单选题:
根据语句Person p=new Student();可以判断出( )。
public class Test{
public static void main(String[] args){
Point p1 = new Point(10, 20);
Point p2 = p1.move(-5, 3);
System.out.println(p1.getInfo());
System.out.println(p2.getInfo());
}
}
选项:
A:Person类的父类是Object类
B:Student类的父类是Object类
C:Student类是Person类的直接子类或者间接子类
D:都正确
答案:
2、单选题:
根据申明public abstract class Document{……}下面说法中错误的是( )。
选项:
A:Document类一定有抽象方法
B:Document类可以作为方法的返回类型
C:语句Document doc = null;在语法上一定是正确的
D:Document类一定有toString方法
答案:
3、判断题:
根据语句String name=((NamedBean)bean).name;可以断定NamedBean类中一定申明了name属性。( )
选项:
A:对
B:错
答案:
4、多选题:
能够改正下面程序中语法错误的选项是( )。
public class Test{
String hello = “Hello, ”;
public static void main(String[] args){
String john = “John”;
String info = hello + john;
System.out.println(info);
}
}
选项:
A:修改public static void main为:
public void main
B:修改String hello = “Hello, ”;为:
static String hello = “Hello”;
C:修改String info = hello + john;为:
String info = new Test().hello + john;
D:修改String info = hello + john;为:
String info = john;
答案:
5、多选题:
根据以下程序选择正确的说法( )。
abstract class Animal{
public String sound();
}
class Dog extends Animal{
public String sound(){return “汪汪”;}
}
class Cat extends Animal{
public String sound(){return “喵喵”;}
}
public class Test{
public static void main(String[] args){
Animal[] zoo = {new Dog(), new Dog(), new Cat()};
for(int i=0; i<zoo.length; i++) System.out.println(zoo[i].sound());
}
}
选项:
A:语法上Cat c = (Cat)new Dog();是一条正确的语句
B:语法上Cat c = (Cat)zoo[0];是一条正确的语句
C:程序运行输出如下结果:
汪汪
汪汪
喵喵
D:语法上Cat c = (Cat)new Animal();是一条正确的语句
答案:
第四章 单元测试
1、单选题:
下面语句中不存在语法错误的选项是( )。
选项:
A:throw new IOException();
B:throw new NullPointerException();
C:throw “Exception”;
D:throw new Exception();
答案:
2、单选题:
已知Paper类是Document类的子类,d是Document类型的变量,运行语句Paper paper=(Paper)d;时有可能产生的异常有( )。
选项:
A:NullPointerException;
B:ClassCastException
C:IOException
D:都有可能
答案:
3、判断题:
异常处理有两种方式,一种是使用try-catch捕获异常,另一种方式是在方法形式中加上throws申明。( )
选项:
A:对
B:错
答案:
4、多选题:
下面程序存在语法错误,做出正确修改的选项是( )。
public class Test{
public static void main(String[] args){
Exception e = new NullPointerException();
if(true) throw e;
System.out.println(“The End”);
}
}
选项:
A:修改Exception e = new NullPointerException();为:
NullPointerException e = new NullPointerException();
B:修改throw e;为:
try{throw e;}catch(NullPointerException e){}
C:修改throw e;为:
try{throw e;}catch(Exception e){}
D:修改Exception e = new NullPointerException();为:
Exception e = new Exception();
答案:
5、多选题:
关于下面程序说法正确的是( )。
class InputException extends RuntimeException{}
public class Test{
private void read(int a)throws InputException{
if(a<0) throw new InputException();
System.out.println(“OK”);
}
public static void main(String[] args){
Object obj = new Test();
((Test)obj).read(12);
System.out.println(“The End”);
}
}
选项:
A:程序存在语法错误无法运行
B:程序可以运行但是会产生异常
C:程序可以运行并输出OK、The End两行字符串
D:InputException属于运行时异常
答案:
第五章 单元测试
1、多选题:
下面关于ArrayList集合类说法正确的是( )。
选项:
A:集合内的元素是有顺序的,可以使用get(i)取得第i个元素
B:使用contains方法可以判断集合内是否存在某一个元素
C:使用add方法可以把任何对象添加到集合中
D:ArrayList是java.util包内申明的预定义类
答案:
2、单选题:
推测java.io包内FileInputStream类构造方法最可能的形式是选项( )。
选项:
A:public FileInputStream(String file)throws FileNotFoundException
B:public FileInputStream(String file)throws IOException
C:public FileInputStream(String file)
D:public FileInputStream(String file)throws Exception
答案:
3、判断题:
URL类是java.net包内申明的预定义类,我们可以用它来读取网络中HTML页面文件的内容。( )
选项:
A:对
B:错
答案:
4、多选题:
关于下面程序说法正确的是( )。
import java.io.*;
import java.net.*;
public class Test{
public static void main(String[] args)throws Exception{
URL url = new URL(“http://www.nufe.edu.cn”);
BufferedReader reader = new BufferedReader(
new InputStreamReader(url.openStream(), “UTF8”)
);
String line = reader.readLine();
while(line!=null){
System.out.println(line);
line = reader.readLine();
}
}
}
选项:
A:InputStreamReader的作用是把字节流转换成字符流
B:程序存在语法错误,需要将main方法形式中的throws Exception修改成throws IOException
C:BufferedReader的作用是能够一行一行的读取内容
D:程序的功能是读取http://www.nufe.edu.cn主页内容并输出
答案:
5、多选题:
根据如下程序片段选择正确的说法( )。
import java.util.*;
public class Test{
public static void main(String[] args){
ArrayList list = new ArrayList();
String data = “John,23nMary,18nAlice,20”;
String[] lines = data.split(“n”);
for(int i=0; i<lines.length; i++){
String[] fields = lines[i].split(“,”);
Person p = new Person(fields[0], Integer.parseInt(fields[1]));
list.add(p);
}
System.out.println(list);
}
}
选项:
A:parseInt是Integer类中的静态方法,运行时有可能产生异常
B:Person类中至少有一个显式申明的构造方法
C:split是String类中的方法,作用是按给定的格式分割成子串
D:如果程序输出结果[John 23, Mary 18, Alice 20],那么可以判断Person类一定覆盖了toString方法
答案:
请先
!