
| 得分 | 评卷人 | 一、单项选择题(每小题1分,共50分) |
| (每一道试题下面有A、B、C、D四个备选答案,请从中选择一个最佳答案,并在“答题卡”上将相应题号的字母涂黑,以示正确答案。) |
(A)private (B)protected
(C)private final (D)public
2.设有下面两个类的定义:
class Student extends Person {
long id; // 身份证号
int score; // 入学总分
S姓名
int getScore(){return score;}
}
请问:按照UML对类关系的定义,类Student和类Person的关系是_________。 ( )
(A)关联 (B)聚集
(C)泛化 (D)依赖
3.设有下面两个赋值语句:
a = Integer.parseInt(“1024”);
b = Integer.valueOf(“1024”);
下述说法正确的是_________。 ( )
(A)a是整数类型变量,b是整数类对象。
(B)a是整数类对象,b是整数类型变量。
(C)a和b都是整数类对象并且它们的值相等。
(D)a和b都是整数类型变量并且它们的值相等。
4.下面的选项中,哪一项不适宜作为“飞机”类的成员方法_________。 ( )
(A)起飞 (B)降落 (C)速度 (D)加速
5.在Java Applet程序用户自定义的Applet子类中,常常重载_________方法在Applet的界面中显示文字、图形和其它界面元素。 ( )
(A)start() (B)stop() (C)paint() (D)init()
6.A派生出子类B ,B派生出子类C,并且在Java源代码中有如下声明:
(1) A a0=new A();
(2) A a1 =new B();
(3) B a2=new C();
请问以下哪个说法是正确的_________。 ( )
(A)只有第(1)行能通过编译。
(B)第(1)、(2)行能通过编译,但第(3)行编译出错。
(C)第(1)、(2)、(3)行能通过编译,但第(2)、(3)行运行时出错。
(D)第(1)行、第(2)行和第(3)行的声明都是正确的。
7.以下程序的输出结果为________。 ( )
public class AppTest {
public static void main(String args[]) {
int i = 10, j = 5;
int m = i > j ? i : j;
System.out.println("m = " + m);
}
}
(A)m=10 (B)m=5 (C)m=15 (D)m=true
8.假设A类有如下定义,设a是A类的一个实例,下列语句调用哪个是错误的_________。 ( )
class A{
int i;
static String s;
void method1() { }
static void method2() { }
}
(A)S(B)A.method1();
(C)a(D)A.method2()
9.设int a=15,则运行a+=a运算后,a的值是_________。 ( )
(A)0 (B)15 (C)225 (D)30
10.有如下代码段:
(1)
(2) { if(unsafe()){//do something…}
(3) else if(safe()){//do the other…}
(4) }
其中,方法unsafe() 将抛出IOException, 请问可将以下哪项填入第(1)行_________。( )
(A)public IOException methodName()
(B)public void methodName()
(C)public void methodName() throw IOException
(D)public void methodName() throws IOException
11.在以下程序中,显示的数字一共有_________个。 ( )
int i;
for(i=0;i<10;i++){
if(i%2==0)
continue;
System.out.println(i);
}
(A)1(B)1(C)5(D)4
12.下列程序的运行结果是_________。 ( )
import java.io.*;
public class Test{
Loop:
Loop;
}
(A)2 4 6 (B)2 4 6 8
(C)1(D)1 2 3 4
13.MAX_LENGTH是int型public成员变量, 变量值保持为常量100,用简短语句定义这个变量____。 ( )
(A)public int MAX_LENGTH=100 (B)final int MAX_LENGTH=100
(C)final public int MAX_LENGTH=100 (D)public final int MAX_LENGTH=100
14.下列程序的执行结果是_________。 ( )
static int x;
static{
}
public static void main(String args[]){
}
static{
}
}
(A)x=5 x=0 x=2 (B)x=2 x=0 x=5 (C)x=5 x=2 x=0 (D)x=0 x=5 x=2
15.下列说法正确的是_________。 ( )
(A)java语言里的线程是无所谓优先级的
(B)String类在java.string包中
(C)java语言中方法变量在方法执行时创建
(D)能序列化的类必须实现java.io.Serializable接口
16.构造BufferedInputStream的合适参数是哪个_________。 ( )
(A)B(B)FileInputStream
(C)FileOuterStream (D)SockectInputStream
17.下列程序的功能是_________。 ( )
import java.io.*;
class Test{
System.out.print((char)b);
}
(A)如果当前目录下的文件a.java存在,则从文件中读取所有字符并输出。
(B)如果当前目录下的文件a.java存在,则从文件中读取一个字符赋值给b,并输出。
(C)如果文件不存在,则在当前目录下建立文件a.java,程序终止并报错。
(D)先判断文件是否存在,如果不存在就新建一个,然后读取一个字符赋值给b,并输出。
18.假设有String a="A";char b='A';int c=65,下面选项中_________是正确的。 ( )
(A)if(a==b) {System.out.print("Equal")}
(B)if(c==b) {System.out.print("Equal")}
(C)if(a==c) {System.out.print("Equal")}
(D)if(c=b) {System.out.print("Equal")}
19.有以下程序片段,下列哪个选项不能插入到行(1)_________。 ( )
(1)
(2)public class A{
(3)//do sth
(4) }
(A)public class MainClass{}
(B)package mine;
(C)class ANotherClass{}
(D)import java.util.*;
20.给出下面代码,那个选项是正确的?_________。 ( )
public class Test{
static int a[] = new int[10];
public static void main(String args[]) {
System.out.println(a[10]);
}
}
(A)编译时将产生错误 (B)编译时正确,运行时将产生错误
(C)输出零 (D)输出空
21.对于下列程,若在dos命令行输入:java A hELLO,则输出为是_________。 )
}
(A)H(B)H(C)h(D)hello
22.执行代码String[] s=new String[10]后,哪个结论是正确的_________。 ( )
(A)s[10]为"(B)s[9]为n(C)s[0]为未定义 (D)s.length为9
23.下面哪个方法可以在任何时候被任何线程调用_________。 ( )
(A)n(B)w(C)notifyAll() (D)sleep()
24.给出下面代码段,哪行将引起一个编译时错误_________。 ( )
1) public class Test {
11) }
12)}
(A)l(B)l(C)l(D)line 10
25.下面用来表达x的a次幂,正确的是_________。 ( )
(A)x(B)x&a
(C)M(D)x$a
26.编译,运行下列代码后的结果是_________。 ( )
public class Test {
public static void main (String args []) {
int age;
age = age + 1;
System.out.println("The age is " + age);
}
}
(A)编译、运行后没有输出 (B)编译、运行后输出:The age is 1
(C)能通过编译,但运行时产生错误 (D)不能通过编译
27.把一个字符串按某个标记分段,下面哪个类能实现这个功能_________。 ( )
(A)String (B)StringBuffer
(C)StringTokenizer (D)Vector
28.Character流与Byte流的区别是_________。 ( )
(A)每次读入的字节数不同
(B)前者带有缓冲,后者没有
(C)前者是块读写,后者是字节读写
(D)二者没有区别,可以互换使用
29.在switch(expression)语句中,expression的数据类型不能是_________。 ( )
(A)double (B)char (C)byte (D)short
30.如果下列的方法能够正常运行,在控制台上肯定不会显示什么_________。 ( )
public void example( ){
}
(A)T(B)T(C)T(D)Test 1
31.下列关于Java多线程并发控制机制的叙述中,错误的是_________。 ( )
(A)Java中对共享数据操作的并发控制是采用加锁技术
(B)线程之间的交互,提倡采用suspend()/resume()方法
(C)共享数据的访问权限都必须定义为private
(D)Java中没有提供检测与避免死锁的专门机制,但应用程序员可以采用某些策略防止死锁的发生
32.在Java中,监听事件和处理事件_________。 ( )
(A)都由Listener完成
(B)都由相应事件Listener处登记过的构件完成
(C)由Listener和构件分别完成
(D)由Listener和窗口分别完成
33.利用Java语言存取数据库,建立了Statement对象后,如果要执行的SQL语句为insert,那么采用的方法最合适的是________。 ( )
(A)executeQuery() (B)execute()
(C)e(D)executeUpdate()
34.关于以下程序代码的说明正确的是________。 ( )
(1)public class 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++;
(10) HasStatic.x--;
(11) System.out.println("x="+x);
(12) }
(13)}
(A)(5)行不能通过编译,因为引用了私有静态变量。
(B)(10)行不能通过编译,因为x是私有静态变量。
(C)程序通过编译,输出结果为:x=103。
(D)程序通过编译,输出结果为:x=102。
35.以下描述正确的是_________。 ( )
(A)在Java中任何类都可以创建该类的对象
(B)在定义抽象类时使用的关键字是Abstracts
(C)当一个类被final关键字修饰后,它将不能再派生子类
(D)在Java中,不再引用的空间必须由程序员释放
36.找出与3*4值相同的表达式_________。 ( )
(A)3(B)3(C)3(D)3<<<2
37.设int型变量x= 1 , y= 2 , z= 3,则表达式y+=z--/x++的y的值是________。 ( )
(A)3 (B)3.5 (C)4(D)5
38.类Test1、Test2定义如下:
(1)public class Test1{
(2) ,float b) throws IOException {}
(3)}
(4)public class Test2 extends Test1{
(5)
(6)}
将以下哪种方法插入第(5)行是不合法的_________。 ( )
(A)float aMethod(float a,float b){}
(B)public int aMethod(int a,int b)throws Exception{}
(C)public float aMethod(float p,float q){}
(D)public int aMethod(int a,int b)throws IOException{}
39.以下程序的运行结果为_________。 ( )
public class Test {
}
(A)A(B)ABCDABCD
(C)ACBDBDCD
(D)An exception is thrown at runtime
40.设x为float型变量,y为double型变量,a为int型变量,b为long型变量,c为char型变量,则表达式x+y*a/x+b/y+c的值为_________类型。 ( )
(A)i(B)l(C)d(D)char
41.类Teacher和Student是类Person的子类;
Person p;
Teacher t;
Student s;
//p, t 和 s 均非空
if(t instanceof Person) { s = (Student)t; }
最后一句语句的结果是_________。 ( )
(A)将构造一个Student对象 (B)表达式是合法的
(C)表达式是错误的 (D)编译时正确,但运行时错误
42.指出下列程序运行的结果_________。 ( )
public class T1_4 {
}
(A)g(B)good and gbc
(C)t(D)test ok and gbc
43.x=2.5,a=7,y=4,则表达式x+a%3*(int)x%(int)y的值为_________。 ( )
(A)2(B)3.5
(C)4(D)5.5
44.下列内部类的正确用途是_________。 ( )
btnn.addActionListener(new //注册
ActionListener() {
})
(A)用于访问外部类的数据。
(B)用于进行事件处理。
(C)隐藏起来不被同一包中的其他类所见。
(D)生成事件适配器。
45.下面说法哪些是正确的_________。 ( )
(A)Applet可以访问本地文件 (B)对static方法的调用不需要类实例
(C)socket类在java.web.lang中 (D)192.168.0.1地址代表本机
46.如下程序,运行后的结果为_________。 ( )
int m=5;
for (int i=1;i<=10;i++){
for(int j=1;j<=5;j++){
if (i==5) break stop;
m+=1;
}
if (i==4) continue;
m-=1;
}
(A)2(B)2(C)2(D)23
47.下面程序的执行结果是_________。 ( )
public class test{
年北京奥运会!");
同一个世界,同一个梦想!");
我们共同努力!");
}
}
(A)我们共同努力!2008年北京奥运会!同一个世界,同一个梦想!
(B)2008年北京奥运会!我们共同努力!同一个世界,同一个梦想!
(C)同一个世界,同一个梦想!2008年北京奥运会!我们共同努力!
(D)2008年北京奥运会!同一个世界,同一个梦想!我们共同努力!
48.下列程序的执行结果为________。 ( )
public class TestA{
public TestA(){
年!");
年,新的希望");
}
class TestB extends TestA{
新的希望!");
}
(A)2009年!新的希望! (B)2009年!
(C)新的希望! (D)2009年,新的希望
49.下列程序的执行结果为_________。 ( )
public class AClass {
this.name = name;
今夜景阳冈!" + name );
}
class QTest {
武松打老虎!" ) {
public void print() {
super.print();
}
}).print();
}
(A)今夜景阳冈! (B)武松打老虎!
(C)今夜景阳冈!武松打老虎! (D)武松打老虎!今夜景阳冈!
50.下列程序的运行结果为_________。 ( )
class Value{
public int i = 15;
}
public class Test{
public static void main(String argv[]){
Test t = new Test();
t.first();
int i = 5;
Value v = new Value();
v.i = 25;
second(v, i);
System.out.println(v.i);
i = 0;
v.i = 20;
Value val = new Value();
v = val;
System.out.println(v.i + " " + I + " ");
}
(A)1(B)15 0 15
(C)2(D)0 15 20
| 得分 | 评卷人 | 二、判断题(每小题1分,共10分) |
| (判断正确答案选项,并在“答题卡”的相应位置填涂,认为正确的涂“A”,错误的涂“B ”。多涂、少涂、错误均无分。) |
52.使用方法length( )可以获得字符串或数组的长度。 ( )
53.抽象类只能作为父类,可以定义抽象类的对象。 ( )
54.在Java中,异常(Exception)是指程序在编译和运行时出现的错误。 ( )
55.在Java语言中,drawOval(100,100,80,80)表示画圆,其中(100,100)表示圆心。 ( )
56.由于URL对象对应的Internet地址可以划分为“协议名”、“端口号”和“文件名”3部分,所以创建一个URL对象后,可以通过修改这3部分内容来修改这个URL对象的Internet地址。 ( )
57.在Java语言中,有的类定义时可以不定义构造函数,所以构造函数不是必需的。( )
58.Java的屏幕坐标是以像素为单位的,容器的左上角被定为坐标的起点。 ( )
59.如果p是父类Parent的对象,而c是子类Child的对象,则语句p = c是正确的。 ( )
60.Java类中不能存在同名的两个成员方法。 ( )
| 得分 | 评卷人 | 三、多项选择题(每小题3分,共15分) |
| (每一道试题下面有A、B、C、D四个备选答案,请从中选择多个可能答案,并在“答题卡”上将相应题号的字母涂黑,以示正确答案。) |
10) class Certkiller1 {
11) public Certkiller1 foo(){return this;}
12) }
13) class Certkiller2 extends Certkiller1{
14) public Certkiller1 foo(){return this;}
15) }
16) class Certkill3 extends Certkiller2{
17) //insert method here
18) }
(A)public void foo() { }
(B)public int foo() {return 3;}
(C)public Certkiller2 foo() {return this;}
(D)public Certkiller1 foo() {return this;}
62.给定下面的代码,请问选项中的说法哪些是正确的? ( )
class Certkiller{
static void alpha(){/*more code here*/}
void beta(){/*more code here*/}
}
(A)Certkiller.beta()是beta()方法的一种有效的调用
(B)Certkiller.alpha()是alpha()方法的一种有效的调用
(C)beta()能够直接调用alpha()方法
(D)alpha()能够直接调用beta()方法
63.给定下面的四个代码段,请问如果类C的第3行抛出一个NullPointerException异常,下面选项中的描述,哪些是正确的? ( )
代码段I:
1) public class A{
2) public void method1(){
3) B b = new B();
4) b.method2();
5) //more code here
6) }
7) }
代码段II:
1) public class B{
2) public void method2(){
3) C c = new C();
4) c.method3();
5) //more code here
6) }
7) }
代码段III:
1) public class C{
2) public void method3(){
3) //more code here
4) }
5) }
代码段IV:
25) try{
26) A a = new A();
27) a.method1();
28) }catch(Exception e){
29) System.out.print("An error occurred");
30) }
(A)代码段IV的第29行将执行。
(B)代码段I类A的第5行将执行
(C)代码段II类B的第5行将执行
(D)代码段IV的第27行将触发程序异常
.给定下面的代码,为了保证程序正常的使用泛型定义,请问选项中哪些描述必须要做?( )
11) public static int sum(List list){
12) int sum = 0;
13) for(Iterator iter=list.iterator();iter.hasNext();){
14) int i = ((Integer)iter.next()).intValue();
15) sum += i;
16) }
17) return sum;
18) }
(A)删除第14行
(B)将第13行换成for(int i:intList){
(C)将第13行换成for(Iterator iter:intList){
(D)将sum方法的声明改成sum(List 65.给定下面的程序代码,请问选项中哪些语句插入到第27行,能够使程序输出100?( ) 10) class Inner{ 11) private int x; 12) public void setX(int x){this.x=x;} 13) public int getX(){return x;} 14) } 15) class Outer{ 16) private Inner y; 17) public void setY(Inner y){this.y=y;} 18) public Inner getY(){return y;} 19) } 20) public class Gamma { 21) public static void main(String[] args) { 22) Outer o=new Outer(); 23) Inner i=new Inner(); 24) int n=10; 25) i.setX(n); 26) o.setY(i); 27) //insert code here 28) System.out.println(o.getY().getX()); 29) } 30) } (A)i.setX(100); (B)o.getY().setX(100); (C)o.setY(i); i = new Inner(); i.setX(100); (D)i = new Inner(); i.setX(100); o.setY(i); 答案 一、单项选择题(每小题1分,共50分) 1、D 2、C 3、A 4、C 5、C 6、D 7、A 8、B 9、D 10、D 11、C 12、B 13、D 14、D 15、D 16、B 17、A 18、B 19、A 20、A 21、D 22、B 23、D 24、D 25、C 26、D 27、C 28、A 29、A 30、C 31、B 32、B 33、D 34、D 35、C 36、C 37、D 38、B 39、A 40、C 41、C 42、B 43、C 44、B 45、B 46、C 47、B 48、A 49、C 50、A 二、判断题(每小题1分,共10分) 51、A 52、B 53、B 54、B 55、A 56、B 57、B 58、A 59、A 60、B 三、多项选择题(每小题3分,共15分) 61、CD 62、BC 63、AD 、ABD 65、ABD
