当前位置:文档之家› java基础笔试测试题及答案

java基础笔试测试题及答案

java基础笔试测试题及答案
java基础笔试测试题及答案

Java 一章至五章考试

一.填空题(8分)

1.面向对象的三大原则是(封装),(继承)和(多态).2 分

2.如果想在对象实例化的同时就初始化成员属性,则使用(构造函数).2 分

3.(实体)方法和(构造)方法不能修饰为abstract ?2分

选择题(60分)

1)在Java语言中,下列(a,d )是不满足命名规范的变量名。(选择二项)

a) 姓名

b) $Name

c) _in sta nceof

d) in sta nceof

2) 下列Java代码片段的输出结果是(a )。

char c='a';

int i=c;

float f=i;

byte b=(byte)c;

System.out.pri ntln( c+","+i+","+f+","+b);

a) 编译错误

b) a,97,97,97

c) a,97,97.0,97

d) a,97,97.0f,97

3) 下列Java代码中,空白处的代码是(b,c )。(选择两项)

public in terface Fee{

public float calLabFee(float unitPrice, float time);

}

public class FeeImpl impleme nts Fee {

public float calLabFee(float unitPrice, float time){

retur n un itPrice * time;

}

}

public class Fee In terfaceTest {

public static void main( Stri ng[] args){

Float labFee = fee.calLabFee(400.00,5);

}

}

a) Fee fee = new Fee ();

b) Fee fee = new Feelmpl();

c) Feelmpl fee = new Feelmpl();

d) Feelmpl fee = new Fee ();

4) 在JAVA语言中,在包Packagel中包含包Package2,类Class_A直接隶属于包

Packagel,类Class_C 直接隶属于包package2.在类Class_B 要应用Class_A 的A

和Class_C的方法B ,你需要(a, b )语句。(选择两项)

a) import package^*;

b) import package1.package2.*;

c) import package2.*;

d) import package2.package1.*;

5) in t[] my_Array;

my_Array=new in t[5];

for(i nt coun t=0;co un t<=5;co un t++) System.out.pri ntln(m y_Array[co un t]);

正确的运行结果是(d)

a) 将1,2,3,4,5输出到屏幕

b) 将0, 1,2,3,4输出到屏幕

c) 将0,1,2,3,4,5输出到屏幕

d) 将出现运行时异常

6) 在java语言中,如果你有下面的类定义:(b)

abstract class Shape{

abstract void draw();

}

class Square exte nds Shape{}. (选择一项)

a) 一切成功编译

b) Shape可以编译,Square不能编译

c) Square可以编译,Shape不能编译

d) Square,Shape都不能编译

7) 在JAVA编程中,以下(b )命令用来执行JAVA类文件

a) javac

b) java

c) appletviewer

d) 以上所有选项都不正确

8) 编译并运行下面的Java程序:(c)

class A{

int var1=1;

int var2;

public static void main( Stri ng[] args){

in t var3=3;

A a=new A();

System.out.pri ntl n( a.var1+a.var2+var3); }

}

a) 0

b) 4

c) 3

d) 代码无法编译,因为var2根本没有被初始化

9) 在Java语言中,下面关于构造函数的描述正确的是( d )。(选择一项)

a) 类必须有显式构造函数

b) 它的返回类型是void

c) 它和类有相同的名称,但它不能带有任何参数

d) 以上皆非

10) 在java语言中,类Worker是类Person的子类,Worker的构造方法中有一句

"super()",

该语句(c ).( 选择一项)

a) 调用类Worker中定义的super()方法

b) 调用类Person中定义的super()方法

c) 调用类Person的构造函数

d) 语法错误

11) 研究下面的JAVA代码: switch(x){ case1:

System.out.pri ntl n( 1);

case2:

case3:

System.out.pri ntl n( 3);

case4:

System.out.pri ntl n(4); }

当x=2时,运行结果是(d ).(选择一项)

a) 没有输出任何结果

b) 输出结果为3 c) 输出结果为3和4 d)

输出结果为1,3和4

12)

在〃point x

处的哪些申明是句法上合法的?

(选择两项)

class Pers on { private int a;

public int cha nge(i nt m){retur n m;} }

public class Teacher exte nds Person { public int b;

public static void main(String arg[]){ Pers on p=new Pers on(); Teacher t=new Teacher(); int i; //po int x } } (c, d )

c) i=p.a;

d) i=p.cha nge(30); e)

i=t.b;

13) 下面关于继承的哪些叙述是正确的? (选择两项)(a, d)

a) 在java 中只允许单一继承

b) 在java 中一个类只能实现一个接口

c) 在java 中一个类不能同时继承一个类和实现一个接口 d)

java 的单一继承使代码更可靠。

14) public class test3 {

public static void main( stri ng args[ ]) {

for (int i=0;i<3; i ++) for(i nt

j=3;j >=0;j--) if(i= =j) con ti nue;

system.out.pri nti n( }

a) b) i=m;

i=b; { {

”+i+

“= ”+j);

} (a,d,b)( 选择三项)

a) i =0 j=3

b) i =0 j=0

c) i =2 j=2

d) i =0 j=2

e) i =1 j=2

15) ( d )修饰符允许对类成员的访问不依赖于该类的任何对象

a) abstract

b) static

c) return

d) public

16) 研究下面的Java代码:

public class testExcepti on{

public static void main(String args[]){

int a[]={0,1,2,3,4};

int sum=0;

try{

for(int i=1;i<6;i++)

sum=sum+a[i];

System.out.pri ntl n("sum="+sum);

}

catch(Array In dexOutOfB oun dsExcepti on e){

System.out.println(”数组越界");

}

finally{ System.out.println(”程序结束");}

}

}

输出结果将是(b )。(选择一项)

a) 10 数组越界程序结束

b) 10 程序结束

c) 数组越界程序结束

d) 程序结束

17) 给定如下java代码:

public class Test

{

public static void main(String[] args)

{

int output=10;

boolea n b仁false;

if((b1==true )&&((output+=10)==20))

{

System.out.println( Equal "+output);

}else

{

System.out.println( Not equal "+output);

}

}

}( c )

a) Equal 10

b) Equal 20

c) Not equal 10

d) Not equal 20

18) 给定如下java代码,编译运行后将会输出(c )(选择一项)

public class Test

{

public static void main( Stri ng[] args)

{

int a = 5;

System.out.pri ntln ((a%2==1)?(a+1)/2:a/2);

}

}

a) 1

b) 2

c) 3

d) 4

19) public class Test exte nds Parent

{

public int coun t(){

return 1%9;

}

public static void main(String[] args)

{

System.out.pri ntl n(coun t());

}

}

编译运行结果是(c )(选择一项)

a) 编译错误

b ) 运行时出现例外

c ) 正常运行,输出1

d )

正常运行,输出0

20)

已知 A 类被打包在 packageA , B 类被打包在 packageB ,且B 类被声明为 public ,

且有一个成员变量 x 被声明为protected 控制方式。C 类也位于

packageA 包,且继承了 B 类。则以下说话正确的是(c )(选择一项) A 类的实例不能访问到 A 类的实例能够访问到 C 类的实例可以访问到 C 类的实例不能访问到 三?问答题(22分) 1.

方法重载要符合什么条件? 4分

1,方法名相同

2,参数类型不同(参数个数不同,或者参数类型不同,或者类型和参数都不同) 3,与返回类型无关

2?修饰成员变量的四种访问权限是哪些,分别在哪些地方可以访问? 4分 1,public ,所有都可访问

2, protected ,子类和同包可访问 3, private ,本类可访问 4,默认,同包可访问

3. super 关键字的作用?它什么时候用? 3分

1,放在子类构造函数的第一行,显示调用父类的构造函数 2,super.方法名,调用父类的方法 3,super.属性名,调用父类的成员属性

4. 方法重写要符合什么条件?和方法重载有什么区别?

5分

1,有继承

2,方法名,参数,返回类型都相同 与重载的区别:

重载是参数不同,与返回类型无关

4.多态分哪两种?前提条件分别是什么? 3分

1,运行时多态,前提是有继承,子类重写父类的方法,并且父类的引用指向子类的应用 2,编译时多态,

6. final 有哪些作用?分别有哪些注意事项? 3分

1, 类不能被继承,方法不能被重写 2, 方法中不能用this 关键字

a) b) c) d)

B 类的实例

B 类一个实例的x 成员 B 类一个实例的x 成员 B 类的实例

相关主题
文本预览
相关文档 最新文档