奥鹏西安交通大学2020年3月课程考试《Java语言》参考资料答案
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
西安交通大学课程考试复习资料
单选题
1.给出下面代码,关于该程序以下哪个说法是正确的?( )
public class Person{
static int arr[] = new int[5];
public static void main(String a[]) {
System.out.println(arr[0]);}
}
}
A.编译时将产生错误
B.编译时正确,运行时将产生错误
C.输出零
D.输出空
答案: C
2.有如下代码段:
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
答案: D
3.下面哪个函数是public void aMethod(){...}的重载函数?( )
A.void aMethod( ){...}
B.public int aMethod(){...}
C.public void aMethod ( ){...}
D.public int aMethod ( int m){...}
答案: D
4.以下哪项是接口的正确定义?( )
A.interface B
{ void print() { } ;}
B.abstract interface B
{ void print() ;}
C.abstract interface B extends A1,A2 //A1、A2为已定义的接口
{ abstract void print(){ };}
D.interface B
{ void print();}
答案: D
5.类Test1、Test2定义如下:
1. public class Test1
2.{ public float aMethod(float a,float b) throws
3. IOException { }
4. }
5. public class Test2 extends Test1{
6.
7.}
将以下哪种方法插入行6是不合法的。
( )
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{ }
答案: A
6.关于以下application的说明,正确的是( )
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行不能通过编译,因为缺少方法名和返回类型
B.9行不能通过编译,因为只能有一个静态初始化器
C.编译通过,执行结果为:x=5
D.编译通过,执行结果为:x=3
答案: C
7.在使用interface声明一个接口时,只可以使用( )修饰符修饰该接口。
A.private
B.protected
C.private protected
D.public
答案: D
8.给出下面代码,关于该程序以下哪个说法是正确的?( )
public class Person{
static int arr[] = new int[5];
public static void main(String a[]) {
System.out.println(arr[0]);}
}
}
A.编译时将产生错误
B.编译时正确,运行时将产生错误
C.输出零
D.输出空
答案: C
9.有如下代码段:
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
答案: D
10.假设A类有如下定义,设a是A类的一个实例,下列语句调用哪个是错误的?( )
class A
{ int i;
static String s;
void method1() { }
static void method2() { }
}
A.System.out.println(a.i);
B.a.method1();
C.A.method1();
D.A.method2()
答案: C
11.以下哪个关键字可以用来为对象加互斥锁?( )
A.transient
B.static
C.serialize
D.synchronized
答案: D
12.以下哪个方法用于定义线程的执行体? ( )
A.start()
B.init()
C.run()
D.synchronized()
答案: C
13.Java application中的主类需包含main方法,main方法的返回类型是什么?( )
A.int
B.float
C.double
D.void
答案: D
14.关于以下程序段,正确的说法是( )
1. String s1=”abc”+”def”;
2. String s2=new String(s1);
3. if(s1= =s2)
4. System.out.println(“= = succeeded”);
5. if (s1.equals(s2))
6. System.out.println(“.equals() succeeded”);
A.行4与行6都将执行
B.行4执行,行6不执行
C.行6执行,行4不执行
D.行4、行6都不执行
答案: C
15.类Test1、Test2定义如下:
1. public class Test1
2.{ public float aMethod(float a,float b) throws
3. IOException { }
4. }
5. public class Test2 extends Test1{
6.
7.}
将以下哪种方法插入行6是不合法的。
( )
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{ }答案: A
16.以下选项中循环结构合法的是( )
A.while (int i<7)
{ 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; 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<10);
答案: C
17.关于以下程序代码的说明正确的是( )
1.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
答案: D
18.以下声明合法的是()
A.default String s;
B.public final static native int w( )
C.abstract double d;
D.abstract final double hyperbolicCosine( )答案: D
19.Character流与Byte流的区别是()
A.每次读入的字节数不同
B.前者带有缓冲,后者没有
C.前者是字符读写,后者是字节读写
D.二者没有区别,可以互换使用
答案: C
20.Java中()
A.一个子类可以有多个父类,一个父类也可以有多个子类
B.一个子类可以有多个父类,但一个父类只可以有一个子类
C.一个子类可以有一个父类,但一个父类可以有多个子类
D.上述说法都不对
答案: C
21.在创建对象时必须()
A.先声明对象,然后才能使用对象
B.先声明对象,为对象分配内存空间,然后才能使用对象
C.先声明对象,为对象分配内存空间,对对象初始化,然后才能使用对象
D.上述说法都对
答案: C
22.整型数据类型中,需要内存空间最少的是()
A.short
B.long
C.int
D.byte
答案: D
23.有一段java 应用程序,它的主类名是a1,那么保存它的源文件名可以是()
A.a1.java
B.a1.class
C.a1
D.都对
答案: A
24.Main()方法的返回类型是:( )
A.int
B.void
C.boolean
D.static
答案: B
25.指出下列程序运行的结果
public class Example{
String str=new String("good");
char[]ch={'a','b','c'};
public static void main(String args[]){ Example ex=new Example();
ex.change(ex.str,ex.ch);
System.out.print(ex.str+" and ");
Sytem.out.print(ex.ch);
}
public void change(String str,char ch[]){ str="test ok";
ch[0]='g';
}
} ( )
A.A good and abc
B.good and gbc
C.test ok and abc
D.test ok and gbc
答案: B
26.下面哪种注释方法能够支持javadoc命令:
A./**...**/
B./*...*/
C.//
D./**...*/
答案: D
27.指出正确的表达式()
A.byte=128;
B.Boolean=null;
C.long l=0xfffL;
D.double=0.9239d;
答案: C
28.下面关于Applet的说法正确的是 ( )
A.Applet也需要main方法
B.Applet必须继承自java.awt.Applet
C.Applet能访问本地文件
D.Applet程序不需要编译
答案: B
29.下列Java常见事件类中哪个是鼠标事件类?
A.InputEvent
B.KeyEvent
C.MouseEvent
D.WindowEvent
答案: C
30.System.out.println("5"+2);的输出结果应该是()。
A.52
B.7
C.2
D.5
答案: A
31.写出下列代码运行的结果?()
int i;
int j;
i=5;j=0;
while(j<100){
for(i=0;i<10;i++)
j++;
}
System.out.println("i="+i);
A.i=10
B.i=9
C.i=5
D.i=0
答案: C
32.下列关于Java线程的说法那些是正确的()
A.每一个Java线程可以看成由代码、一个真实的CPU以及数据三部份组成。
B.创建线程的两种方法中,从Thread类中继承的创建方式可以防止出现多父类问题。
C.Thread类属于java.util程序包。
D.其他说法无一正确。
答案: D
33.下面哪种注释方法能够支持javadoc命令: ( )
A./**...**/
B./*...*/
C.//
D./**...*/
答案: D
34.下列语句序列执行后,i 的值是( )。
int i=8, j=16; if( i-1 > j ) i--; else j--;
A.15
B.16
C.7
D.8
答案: D
35.对于下列代码:
1) class Person {
2) public void printValue(int i, int j) {//... }
3) public void printValue(int i){//... }
4) }
5) public class Teacher extends Person {
6) public void printValue() {//... }
7) public void printValue(int i) {//...}
8) public static void main(String args[]){
9) Person t = new Teacher();
10) t.printValue(10);
11) }
第10行语句将调用哪行语句?()。
A.line 2
B.line 3
C.line 6
D.line 7
答案: D
36.异常包含下列那些内容( )。
A.程序中的语法错误
B.程序的编译错误
C.程序执行过程中遇到的事先没有预料到的情况
D.程序事先定义好的可能出现的意外情况
答案: C
37.运行下列程序,会产生什么结果:class
Outer1{ private int a; void foo(double d,final float f){ String s; final boolean b;
class Inner{ void
methodInner(){ System.out.println("in the Inner"); } } } public static void main(String args[]) { Outer1 me=new Outer1(); me.foo(123,123); System.out.println("outer"); } }
A.in the Inner outer
B.outer
C.in the Inner
D.编译不通过
答案: B
38.下列代码哪几行会出错:
1) public void modify() {
2) int I, j, k;
3) I = 100;
4) while ( I > 0 ) {
5) j = I * 2;
6) System.out.println (" The value of j is " + j );
7) k = k + 1;
8) I--;
9) }
10) } ( )
B.line 6
C.line 7
D.line 8
答案: C
39.编译Java源程序文件将产生相应的字节码文件,这些字节码文件的扩展名为()。
A..byte
B..class
C..html
D..exe
答案: B
40.整型数据类型中,需要内存空间最少的是()
A.short
B.long
C.int
D.byte
答案: D
41.
给出下面代码:
1) class Parent {
2) private String name;
3) public Parent(){}
4) }
5) public class Child extends Parent {
6) private String department;
7) public Child() {}
8) public String getValue(){ return name; }
9) public static void main(String arg[]) {
10) Parent p = new Parent();
11) }
12) }
那些行将引起错误?
B.第6行
C.第7行
D.第8行
答案: D
42.下面的选项中,哪一项不属于“汽车类”的行为()。
A.启动
B.刹车
C.减速
D.速度
答案: D
43.容器被重新设置大小后,哪种布局管理器的容器中的组件大小不随容器大小的变化而改变?( )
A.CardLayout
B.FlowLayout
C.BorderLayout
D.GridLayout
答案: B
44.容器被重新设置大小后,哪种布局管理器的容器中的组件大小不随容器大小的变化而改变?( )
A.CardLayout
B.FlowLayout
C.BorderLayout
D.GridLayout
答案: B
45.给出下面代码段
1) public class Test {
2) int m, n;
3) public Test() {}
4) public Test(int a) { m=a; }
5) public static void main(String arg[]) {
6) Test t1,t2;
7) int j,k;
8) j=0; k=0;
9) t1=new Test();
10) t2=new Test(j,k);
11) }
12) }
哪行将引起一个编译时错误?()。
A.line 3
B.line 5
C.line 6
D.line 10
答案: D
46.下面关于Applet的说法正确的是
A.Applet也需要main方法
B.Applet必须继承自java.awt.Applet
C.Applet能访问本地文件
D.Applet程序不需要编译
答案: B
47.如果类中的成员变量可以被同一包访问,则使用如下哪个约束符( )。
A.private
B.public
C.protected
D.no modifier
48.Character流与Byte流的区别是()
A.每次读入的字节数不同
B.前者带有缓冲,后者没有
C.前者是字符读写,后者是字节读写
D.二者没有区别,可以互换使用
答案: C
49.下列哪个是合法的Java标识符?()
A.Tree&Glasses
B.FirstJavaApplet
C.*theLastOne
D.273.5
答案: B
50.下列关于修饰符混用的说法,错误的是( )
A.abstract不能与final并列修饰同一个类
B.abstract类中不可以有private的成员
C.static方法中能处理非static的属性
D.abstract方法必须在abstract类中
答案: C
51.不允许作为类及类成员的访问控制符的是( )。
A.public
B.private
C.static
D.protected
答案: C
52.在Java中用什么关键字修饰的方法可以直接通过类名来调用?()
A.static
B.final
C.private
D.void
53.下列代码哪几行会出错:
1) public void modify() {
2) int I, j, k;
3) I = 100;
4) while ( I > 0 ) {
5) j = I * 2;
6) System.out.println (" The value of j is " + j );
7) k = k + 1;
8) I--;
9) }
10) } ( )
A.line 4
B.line 6
C.line 7
D.line 8
答案: C
54.下面哪个为构造函数的特性定义( )。
A.在类中声明构造函数时,名称须与类名相同
B.具有重载特性,可以建立多个相同名称
C.使用类建立新对象时,会自动执行构造函数,因此在构造函数内设定变量的初始值进行内存的分配
D.其他都是
答案: D
55.类Teacher和Student是类Person的子类;
Person p;
Teacher t;
Student s;
//p, t and s are all non-null.
if(t instanceof Person) { s = (Student)t; } 最后一句语句的结果是()。
A.将构造一个Student对象;
B.表达式是合法的;
C.表达式是错误的;
D.编译时正确,但运行时错误。
答案: C
56.若特快订单是一种订单,则特快订单类和订单类的关系是
_________。
A.使用关系
B.包含关系
C.继承关系
D.无关系
答案: B
57.执行语句int i=1,j=++i;后i与j的值分别为()。
A.1与1
B.2与1
C.1与2
D.2与2
答案: D
58.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.
答案: D
59.面向对象程序设计方法的优点()。
A.可重用性、可扩展性、可操作性
B.可重用性、可维护性、可操作性
C.可管理性、可扩展性、可操作性
D.可重用性、可扩展性、可管理性
答案: D
60.System类在哪个包中? ( )
A.java.util
B.java.io
C.java.awt
ng
答案: D
61.看以下程序:
boolean a=false;
boolean b=true;
boolean c=(a&&b)&&(!b);
int result=c==false?1:2;
这段程序执行完后,c与result的值是:()。
A.c=false;result=1;
B.c=true;result=2;
C.c=true;result=1;
D.c=false;result=2;
答案: A
62.
看以下程序:
boolean a=false;
boolean b=true;
boolean c=(a&&b)&&(!b);
int result=c==false?1:2;
这段程序执行完后,c与result的值是:
A.c=false;result=1;
B.c=true;result=2;
C.c=true;result=1;
D.c=false;result=2;
答案: A
63.下面那一项不会出现编程错误()。
A.忘记多行注释符的一个定界符
B.一个标识符的大小写字母使用不当
C.括号不成对出现
D.在一个显示图形用户界面的应用程序中调用System .exit
答案: D
64.编译Java程序的命令是:()
A.appletviewer
B.javac
C.java
D.javadoc
答案: B
65.下列程序段执行后的结果是( )。
String s=new String("abcdefg"); for(int
i=0;i<s.length();i+=2){ System.out.print(s.charAt(i)); }
A.aceg
B.ACEG
C.abcdefg
D.abcd
答案: A
66.下面是有关子类调用父类构造函数的描述正确的是()
A.子类定义了自己的构造函数,就不会调用父类的构造函数
B.子类必须通过super关键字调用父类没有参数的构造函数
C.如果子类的构造函数没有通过super调用父类构造函数,那么子类会先调用父类不含参数的构造函数,再调用子类自己的构造函数
D.创建子类对象时,先调用子类自己的构造函数,然后调用父类的构造函数
答案: C
67.Java语言提供了一个()线程,自动回收动态分配的内存
A.异步
B.消费者
C.守护
D.垃圾收集
答案: D
68.指出下列程序运行的结果
public class Example{
String str=new String("good");
char[]ch={'a','b','c'};
public static void main(String args[]){
Example ex=new Example();
ex.change(ex.str,ex.ch);
System.out.print(ex.str+" and ");
Sytem.out.print(ex.ch);
}
public void change(String str,char ch[]){
str="test ok";
ch[0]='g';
}
} ( )
A.good and abc
B.good and gbc
C.test ok and abc
D.test ok and gbc
答案: B
69.class Person{
String name,department;
int age;
public Person(String n){name=n;}
public Person(String n, int a){name=n;age=a;}
public Person(String n,String d,int a){
//doing the same as two arguments version of constructer
//including assignment name=n,age=a
}
}
下列哪一个选项可以添加到“//doing the same....”处?
A.Person(n,a)
B.this(Person(n,a))
C.this(n,a)
D.this(name,age
答案: C
70.Java的字符类型采用的是Unicode编码方案,每个Unicode码占用()个比特位。
A.8
B.16
C.32
D.64
答案: B
71.运行下列程序, 会产生什么结果1:public class X extends Thread implements Runnable{ 2:publ主c void run(){ 3: System.out.println(“this is run()”);4:} 5:public static void main(String args〔〕){ 6:Threadt二new Thread(new X());7:t.start();8:} 9:}
A.第一行会产生编译错误
B.第六行会产生编译错误
C.第六行会产生运行错误
D.程序会运行和启动
答案: A
72.
给出下面代码段
1) public class Test {
2) int m, n;
3) public Test() {}
4) public Test(int a) { m=a; }
5) public static void main(String arg[]) {
6) Test t1,t2;
7) int j,k;
8) j=0; k=0;
9) t1=new Test();
10) t2=new Test(j,k);
11) }
12) }
哪行将引起一个编译时错误?
A.line 3
B.line 5
C.line 6
D.line 10
答案: D
73.在创建对象时必须()
A.先声明对象,然后才能使用对象
B.先声明对象,为对象分配内存空间,然后才能使用对象
C.先声明对象,为对象分配内存空间,对对象初始化,然后才能使用对象
D.上述说法都对
答案: C
74.Java中()
A.一个子类可以有多个父类,一个父类也可以有多个子类
B.一个子类可以有多个父类,但一个父类只可以有一个子类
C.一个子类可以有一个父类,但一个父类可以有多个子类
D.上述说法都不对
答案: C
75.下列哪个选项不是Java语言的特点?()
A.面向对象
B.高安全性
C.平台无关
D.面向过程
答案: D
76.下列关于for循环和while循环的说法中哪个是正确的( )
A.while循环能实现的操作,for循环也都能实现
B.while循环判断条件一般是程序结果,for循环判断条件一般是非程序结果
C.两种循环任何时候都可替换
D.两种循环结构中都必须有循环体,循环体不能为空
答案: A
77.哪个关键字可以对对象加互斥锁?( )
A.transient
B.synchronized
C.serialize
D.static
答案: B
78.以下关于继承的叙述正确的是()。
A.在Java中类只允许单一继承
B.在Java中一个类只能实现一个接口
C.在Java中一个类不能同时继承一个类和实现一个接口
D.在Java中接口只允许单一继承
答案: A
79.对方法main的第1行定义正确的是()。
A.public main( String arg [ ] )
B.public void main( String arg [ ] )
C.public static void main( String arg [ ] )
D.public static void main( String args [ ] )
答案: D
80.下面哪一个操作符的优先级最高?()
A.&&
B.||
C.!
D.()
答案: D
81.下面选项中,Java对类Welcome进行定义正确的是()。
A.public class 1Welcome
B.public class We lcome
C.public class welcome
D.public class Welcome
答案: D
82.下面哪几个函数是public void example(){...}的重载函数( )。
A.public void example( int m){...}
B.public int example(){...}
C.public void example2(){...}
D.public int example3 ( int m, float f){...}
答案: A
83.给出下面代码:
public class test{
static int a[] = new a[10];
public static void main(String args[]) { System.out.println(arr[10]);
}
}
那个选项是正确的?( )
A.编译时将产生错误;
B.编译时正确,运行时将产生错误;
C.输出零;
D.输出空。
答案: A
84.
指出下列程序的运行结果
int i = 9;
switch (i) {
default:
System.out.println("default");
case 0:
System.out.println("zero");
break;
case 1:
System.out.println("one");
case 2:
System.out.println("two");
A.default
B.default, zero
C.error default clause not defined
D.no output displayed那个
答案: B
多选题
1.下列说法错误的有()
A.数组是一种对象
B.数组属于一种原生类
C.int number=[]={31,23,33,43,35,63}
D.数组的大小可以任意改变
答案: B, C, D
2.下列说法错误的有()
A.能被java.exe成功运行的java class文件必须有main()方法
B.J2SDK就是Java API
C.Appletviewer.exe可利用jar选项运行.jar文件
D.能被Appletviewer成功运行的java class文件必须有main()方法答案: B, C, D
3.下列说法错误的有()
A.在类方法中可用this来调用本类的类方法
B.在类方法中调用本类的类方法时可直接调用
C.在类方法中只能调用本类中的类方法
D.在类方法中绝对不能调用实例方法
答案: A, C, D
4.下列正确的有()
A.call by value不会改变实际参数的数值
B.call by reference能改变实际参数的参考地址
C.call by reference不能改变实际参数的参考地址
D.call by reference能改变实际参数的内容
答案: A, C, D
5.不能用来修饰interface的有()
A.private
B.public
C.protected
D.static
答案: A, C, D
6.下列说法错误的有()
A.数组是一种对象
B.数组属于一种原生类
C.int number=[]={31,23,33,43,35,63}
D.数组的大小可以任意改变
答案: B, C, D
7.下列标识符不合法的有()
A.new
B.$Usdollars
C.1234
D.car.taxi
答案: A, C, D
8.下列说法正确的有()
A.环境变量可在编译source code时指定
B.在编译程序时,所能指定的环境变量不包括class path
C.javac一次可同时编译数个Java源文件
D.javac.exe能指定编译结果要置于哪个目录(directory)答案: B, C, D
9.下列说法错误的有()
A.在类方法中可用this来调用本类的类方法
B.在类方法中调用本类的类方法时可直接调用
C.在类方法中只能调用本类中的类方法
D.在类方法中绝对不能调用实例方法
答案: A, C, D
10.Java程序的种类有()
A.类(Class)
B.Applet
C.Application
D.Servlet
答案: B, C, D
11.执行下列代码后,哪个结论是正确的 String[] s=new String[10]; ( )
A.s[10] 为 "";
B.s[9] 为 null;
C.s[0] 为未定义
D.s.length 为10
答案: B, D
12.下面哪些代码段是正确的Java源程序?
A.
package testpackage;
public class Test{//do something...}
B.
import java.io.*;
package testpackage;
public class Test{// do something...}
C.
import java.io.*;
class Person{// do something...}
public class Test{// do something...}
D.
import java.io.*;
import java.awt.*;
public class Test{// do something...}
答案: A, C, D
13.下列方法属于ng.Math类的有(方法名相同即可):
A.random()
B.abs()
C.sqrt()
D.sin()
答案: A, B, C, D
14.指出下列哪个方法与方法public void add(int a){}为合理的重载方法。
( )
A.public int add(int a)
B.public void add(long a)
C.public void add(int a,int b)
D.public void add(float a)
答案: C, D
15.下列哪些情况可以终止当前线程的运行? ( )
A.抛出一个例外时。
B.当该线程调用sleep()方法时。
C.当创建一个新线程时。
D.当一个优先级高的线程进入就绪状态时。
答案: A, B, D
16.下列哪些语句是正确的? ( )
A.int a[][]=new int[][3];
B.int a[][]={{1,3},{2,3,4},{1,2}};
C.String s[][]=new String[2][];
D.String s[][]={{"can","I"},{"help","you"}}
答案: B, C, D
17.不能用来修饰interface的有()
A.Private
B.Public
C.Protected
D.static
答案: A, C, D
18.1) 执行下列代码后,哪个结论是正确的 String[] s=new String[10]; ( )
A.s[10] 为 "";
B.s[9] 为 null;
C.s[0] 为未定义
D.s.length 为10
答案: B, D
19.下面的Java语句错误的是()。
A.Double a=1.0;
B.double a=1.0;
C.out.println("hello");
D.DatagramSocket a = new DatagramSocket()
答案: A, C
20.下面的表达式哪个是正确的? ( )
A.String s="你好";int i=3; s+=i;
B.String s="你好";int i=3; if(i==s){ s+=i};
C.String s="你好";int i=3; s=i+s;
D.String s="你好";int i=3; s=i+;
E.String s=null; int i=(s!=null)&&(s.length>0)?s.length():0;答案: A, E
21.下列哪些说法是正确的?()。
A.Java 语言只允许单一继承
B.Java 语言只允许实现一个接口
C..Java 语言不允许同时继承一个类并实现一个接口
D.Java 语言的单一继承使得代码更加可靠
答案: A, D
22.下面关于Java代码安全的说法哪些是正确的?
A.程序执行过程中需要的所有类都是通过字节码校验程序装入的。
B.代码的运行是由Java运行环境中的解释器完成的。
C.在运行时,字节码要经过装入,校验之后,才能在解释器中执行。
D.在缺省的安全配置条件下,Java Applet不能访问任何本地资源。
答案: A, B, C, D
23.下列表达式哪些是正确的()。
A.byte=340;
B.Boolean=1;
C.long l=-2;
D.double=0.9239d;
答案: B, C
24.对于下列代码:
public class Sample{
long length;
public Sample(long l){ length = l; }
public static void main(String arg[]){
Sample s1, s2, s3;
s1 = new Sample(21L);
s2 = new Sample(21L);
s3 = s2;
long m = 21L;
}
}
下列哪些表达式返回值为'true'? ( )
A.s1 = = s2;
B.s2 = = s3;
C.m = = s1;
D.s1.equals(m)
答案: B, C
25.下列关于"<<"和">>"的运算,哪些是正确的?
A.0000 0100 0000 0000 0000 0000 0000 0000<<5 的运行结果是 1000 0000 0000 0000 0000 0000 0000 0000
B.0000 0100 0000 0000 0000 0000 0000 0000<<5的运行结果是 1111 1100 0000 0000 0000 0000 0000 0000
C.
1100 0000 0000 0000 0000 0000 0000 0000>>5的运行结果是1111 1110 0000 0000 0000 0000 0000 0000
D.1100 0000 0000 0000 0000 0000 0000 0000>>5的运行结果是 0000 0110 0000 0000 0000 0000 0000 0000
答案: A, C
26.下列哪些语句是正确的?
A.int a[][]=new int[][3];
B.int a[][]={{1,3},{2,3,4},{1,2}};
C.String s[][]=new String[2][];
D.String s[][]={{"can","I"},{"help","you"}}
答案: B, C, D
27.构造BufferedInputStream的合适参数是哪个? ( )
A.BufferedInputStream
B.BufferedOutputStream
C.FileInputStream
D.FileOuterStream
E.File
答案: A, C
28.选出合理的标识符 ( )
A._sys1_lll
B.2mail
C.$change
D.class
答案: A, C
29.下面哪些赋值语句是错误的? ( )
A.float f = 11.1;
B.double d = 5.3E12;
C.char c = '\r';
D.byte bb = 433;
E.Boolean b=true;
答案: A, D, E
30.下列哪个方法可用于创建一个可运行的类? ( )
A.public class X implements Runable{ public void run(){ ......} }
B.public class X implements Thread{ public void run(){ ......} }
C.public class X implements Thread{ public int run(){ ......} }
D.public class X implements Runable{ protected void run(){ ......} }
E.public class X implements Thread{ public void run(){ ......} }
答案: A, E
31.给出下面代码段:
1) switch(m)
2) { case 0: System.out.println("case 0");
3) case 1: System.out.println("case 1"); break;
4) case 2:
5) default: System.out.println("default");
6) }
下列m的哪些值将引起"default"的输出?()。
A..0
B.1
C.2
D.3
答案: C, D
32.下面哪些语句能够正确地生成5个空字符串?
A.String a [] = new String [5]; for (int i = 0; i < 5; a[i++] = "");
B.String a [] = {"", "", "", "", ""};
C.String a [5];
D.String [5] a;
E.String [] a = new String [5]; for (int i = 0; i < 5; a[i++] = null);答案: A, B
33.关于awt和swing说法正确的是: ( )
A.awt在不同操作系统中显示相同的风格。
B.swing在不同的操作系统中显示相同的风格
C.java.awt的子类
D.awt和swing都支持事件模型
答案: B, D
34.下面哪个方法可以在任何时候被任何线程调用? ( )
A.notify()
B.wait()
C.notifyAll()
D.sleep()
E.yield()
F.synchronized(this)
答案: D, E, F
35.下列哪些说法是正确的? ( )
A.IOException必须被捕获或抛出
B.java语言会自动初始化变量的值
C.java 语言不允许同时继承一个类并实现一个接口
D.java语言会自动回收内存中的垃圾
答案: A, B, D
36.下列说法正确的有()
A.环境变量可在编译source code时指定
B.在编译程序时,所能指定的环境变量不包括classpath
C.javac一次可同时编译数个Java源文件
D.java.exe能指定编译结果要置于哪个目录(directory)
答案: B, C, D
37.如果下列的方法能够正常运行,在控制台上将显示什么?( )
public void example(){
try{
unsafe();
System.out.println("Test1");
}
catch(SafeException e)
{System.out.println("Test 2");}
finally{System.out.println("Test 3");}
System.out.println("Test 4");
}
A.Test 1
B.Test 2
C.Test 3
D.Test 4
答案: A, C, D
38.下面哪些标识符在Java语言中是合法的?
A.persons$
B.TwoUsers
C.*point
D.instanceof F.end-line
答案: A, B
39.下面的说法正确的是:
A.Java语言里的线程不是对象
B.Applet不需要main方法
C.Java语言的对象都是ng.Object的子类
D.double是Java语言的合法标识符
答案: B, C
40.下列表达式哪些是正确的:
A.byte=340;
B.Boolean=1;
C.long l=-2;
D.double=0.9239d;
答案: B, C
41.定义一个类名为"MyClass.java"的类,并且该类可被一个工程中的所有类访问,那么该类的正确声明应为: ( )
A.private class MyClass extends Object
B.class MyClass extends Object
C.public class MyClass
D.public class MyClass extends Object
答案: C, D
42.下述哪些说法是正确的? ( )
A.java语言中的类只能有一个构造函数
B.程序员可以自己定义自己的异常
C.java语言允许多继承
D.socket在包中
答案: B, D
43.下列说法正确的是 ( )
ng.Clonable是类
ng.Runnable是接口
C.Double对象在ng包中
D.Double a=1.0是正确的java语句
答案: B, C
44.
String s = "hello";
String t = "hello";
char c[] = {'h','e','l','l','o'} ;
下列哪些表达式返回true?
A.s.equals(t);
B.t.equals(c);
C.s==t;
D.t.equals(new String("hello"));
答案: A, D
45.public class parent {
int change() {}
}
class Child extends Parent { }
哪些方法可加入类Child中?()。
A.public int change(){}
B.int chang(int i){}
C.private int change(){}
D.abstract int chang(){}
答案: A, B
判断题
1.当资源不再需要时,一个执行程序却不能恰当地释放他,就会出现资源泄露。
( )
T.对
F.错
答案: T
2.类和方法一般可以实现满足所有用户需要的错误处理。
( )
T.对
F.错
答案: F
3.在定义变量和方法时,必须清楚地在起面前标上访问权限修饰符。
( )
T.对
F.错
答案: T
4.构造方法用于给类的private实例变量赋值。
( )
T.对
F.错
答案: F
5.套接字是指网络上的两个程序经过双向的通信而建立起来的一个实
现数据传输的通道,这个双向连接的一端成为一个套接字( )
A.错误
B.正确
答案: B
6.如果线程的run方法执行结束或抛出一个不能捕获的例外,线程便进入等待状态。
()
A.错误
B.正确
答案: A
7.当鼠标指针位于一个GUI构件的边上时,发生一个MouseOver事件。
()
A.错误
B.正确
答案: A
8.类加载器加载程序运行所需要的所有类,它通过区分本机文件系统的类和网络系统导入的类增加安全性
A.错误
B.正确
答案: B
9.Java语言中对文件没有结构要求,所以需要使用随机存取的程序必须自己建立它们。
()
A.错误
B.正确
答案: B
10.已建立的URL对象不能被改变。
()
A.错误
B.正确
答案: B
11.抛出异常后,控制执行try块后适当的catch块处理程序(如果存在)。
()
A.错误
B.正确
答案: B
12.BorderLayout是面板的缺省布局管理器。
()
A.错误
B.正确
答案: B
13.方法重写发生在类继承时,子类可以重写一个父类;数列表一样时才能说是重写,否则就是重载
A.错误
B.正确
答案: B
14.在使用BorderLayout时,最多可以使用5个构件。
()
A.错误
B.正确
答案: B
15.抽象类可以实例化对象。
()
A.错误
B.正确
答案: A
16.声明为protected的类成员只能被次类中的方法访问。
()
A.错误
B.正确
答案: A
17.一个面板(JPanel)不能被加入到另一个面板(JPanel)中。
()
A.错误
B.正确
答案: A
18.当把一个RandomAccessFile流与一个文件相联是,读写数据的位置由文件位置指针来指定,并且所有数据均以基本数据类型来读写。
()
A.错误
B.正确
答案: A
19.不基于GUI的应用程序会终止,applet或基于GUI的应用程序会重新开始一般事件处理。
()
A.错误
B.正确
答案: B
20.执行throw语句表面发生一个异常,这称为抛出异常。
()
A.错误
B.正确
答案: B
21.随机存取文件中的记录必须等长。
()
A.错误
B.正确
答案: A
22.在BorderLayout中,添加到NORTH区的两个按钮将并排显示。
()
A.错误
B.正确
答案: A
23.通过点运算符与类对象的引用相连,可以访问此类的成员。
()
A.错误
B.正确
答案: B
24.UDP是面向连接的协议。
()
A.错误
B.正确
答案: A
25.类和方法一般可以实现满足所有用户需要的错误处理。
()
A.错误
B.正确
答案: A
26.在随机存取中查找指定记录时不必检查每一条记录。
()
A.错误
B.正确
答案: B
27.进程利用流socket建立与其他进程的连接。
()
A.错误
B.正确
答案: B
28.在Java中,高优先级的可运行线程会抢占低优先级线程。
()
A.错误
B.正确
答案: B
29.类System不是由程序开头的import语句装载。
()。
A.错误
B.正确
答案: B
30.如果线程死亡,它便不能运行。
()
A.错误
B.正确
答案: B
31.interface中定义的变量全部是final static变量
A.错误
B.正确
答案: B
32.数据报传输是可靠的,包按顺序先后达到。
()
A.错误
B.正确
答案: A
33.friendly关键字是Java语言的访间控制修饰符
A.错误
B.正确
答案: A
34.构造方法用于给类的private实例变量赋值。
()
A.错误
B.正确
答案: A
35.注释的作用是使程序在执行时在屏幕上显示//之后的内容。
()
A.错误
B.正确
答案: A
36.线程可以用yield使低优先级的线程运行。
()
A.错误
B.正确
答案: A。