Java编程基础知识点汇总习题集--答案 下载本文

C、 D、 abstract interface A{ interface A { print(); void print(); } }

28、如果在定义一个类的时候没有用到关键字extends,则这个类( )。

A、没有直接父类 B、有直接父类 C、是抽象类 D、以上都不对 29、抽象方法不能含有方法体,并且( )。

A、必须在抽象类中 B、一定在非抽象类中 C、一定在接口中 D、以上都不对 30、下面关于封装性的描述中,错误的是( )。

A.封装体包含属性和行为 B.被封装的某些信息在外不可见

C.封装提高了可重用性 D.封装体中的属性和行为的访问权限相同 31、下列关于抽象类的描述中,错误的是( )。

A.抽象类是用修饰符abstract说明的 B.抽象类是不可以定义对象的 C.抽象类是不可以有构造方法的 D.抽象类通常要有它的子类 32、下列对多态性的描述中,错误的是( )。

A.Java语言允许方法重载与方法覆盖 B.Java语言允许运算符重载

C.Java语言允许变量覆盖 D.多态性提高了程序的抽象性和简洁性 33、下面关于接口的描述中,错误的是( )。

A.一个类只允许继承一个接口 B.定义接口使用的关键字是interface C.在继承接口的类中通常要给出接口中定义的抽象方法的具体实现 D.接口实际上是由常量和抽象方法构成的特殊类 34、对于类与对象的关系,以下说法错误的是:

A) 类是对象的类型 ; B) 对象由类来创建; C) 类是同类对象的抽象 ; D) 对象是创建类的模板; 35、Java编程就是编写类,对每一个类,以下说法错误的是( )。 A) 必须有处理属性数据的方法;

B) 必须有为各属性赋初值的构造方法;

C) 必须有作为程序入口的main方法;

D) 必须有反映对象各属性的成员变量; 36、以下代码存在编译错误有( )。 1) class exp3{

2) public int x,y; 3) System.out.print(x) 4) setY(int y){ 5) this.y = y; 6) } 7) }

8) public static void main(String[] args){ 9) new exp4(); 10) }

A) 第1行错误,类名首字母必须大写; B) 第3行错误,类中不能有操作性语句; C) 第4行错误,方法必须有反回值类型; D) 第8行错误,方法不能定义在类外; 37、以下代码存在编译错误有( )。 1) class Exp4{

2) public int x,y;

资料

3) { x=3 ; }

4) public static void main(String[] args){ 5) Exp4 a,b=new Exp4(); 6) System.out.println(y); 7) System.out.println(a.x); 8) } 9) }

A) 第2行错误,不能一行定义两个以上类成员变量; B) 第3行错误,不能对实例变量赋初值; C) 第6行错误,y不能识别; D) 第7行错误,a尚未创建。 38、在Java中,要使用某个类的对象之前,以下哪步是非必须的( A)用该类名声明一个引用;

B)用new语句分配一个内存空间;

C)调用构造方法初始化该对象; D)用import语句导入类所在的包。

39、下述哪条关于构造方法的说法,不符合Java语法的规定( )。A) 每个类至少有一个构造方法; B) 构造方法必须与类同名;

C) 构造方法无返回值,其返回值类型必须写为void; D) 构造方法必须是public的。

40、关于构造方法的定义与使用以下例子中哪些编译错误是存在的( 1) class Exp7{ 2) int x,y;

3) void Exp7(int x){ this.x = x; }

4) Exp7(int x,int y){ this.x = x; this.y = y; } 5) public static void main(String[] args){ 6) Exp7 a,b,c; 7) a = new Exp7(); 8) b = new Exp7(2); 9) c = new Exp7(3,5); 10) } 11) }

A) 第4行错误,方法必须有反回值类型; B) 第7行错误,该构造方法不存在; C) 第8行错误,该构造方法不存在;

D) 第9行错误,该构造方法不是public的不能调用;

41、关于构造方法的定义与使用以下例子中哪些编译错误是存在的( 1) class Exp8{ 2) int x,y; 3) Exp8(){}

4) Exp8(int x,int y){ this.x = x; this.y = y; } 5) set(){x = 1 ; y = 2; }

6) void set(int x,int y) { this.x = x; this.y = y; } 7) public static void main(String[] args){ 8) Exp6 a,b,c,d; 9) a = new Exp8(); 10) b = new set(2,3);

资料

。)。)。)

11) a.Exp8(3,5); 12) a.set(3,5); 13) } 14) }

A) 第5行错误,方法必须有反回值类型; B) 第10行错误,方法调用不合法; C) 第11行错误,方法调用不合法; D) 第12行错误,方法调用不合法。

42、类中某方法定义如下: double fun(int a,int b){ return a*1.0/b; }

同一类内其它方法调用该方法的正确方式是( )。

A) double a = fun(1,2); B) double a = fun(1.0,2.0); C) int x = fun(1,2); D) int x = fun(1.0,2.0); 43、对以下程序说法正确的有( )。

1) class Exp10{ 2) int x;

3) void setX(int x) { 4) this.x = x; 5) }

6) public static void main(String[] args){ 7) Exp6 a,b,c; 8) a = new Exp8(); 9) b = c = new Exp8(); 10) b.setX(2);

11) System.out.print(a.x); 12) System.out.print(b.x); 13) System.out.print(c.x); 14) } 15) }

A) 第9行错误,不允许连等; B) 第10行错误,b没有创建; C) 没有错误,打印输出020;

D) 没有错误,打印输出022。

44、对以下程序说法正确的有( )。

1) class Exp11{

2) private int x;

3) void setX(int x) { this.x = x;} 4) int getX( ) { return x;} 5) void run() {

6) System.out.print(getX()); 7) }

8) public static void main(String[] args){ 9) Exp6 a = new Exp11(); 10) System.out.print(a.x); 11) setX(2);

12) System.out.print(a.getX()); 13) int b = a.run(); 14) } 15) }

资料

A) 第6行错误,方法调用须带对象名;

B) 第10行错误,私有成员不允许类外使用; C) 第11行错误,方法调用没有带对象名;

D) 第13行错误,无返回值的方法调用不能用来赋值;

45、以下程序运行结果是( )。

1) class Exp12{ 2) int x=1;

3) void chang(int a,int[] b) { 4) x++;a++;b[0]++; 5) }

6) public static void main(String[] args){ 7) Exp6 a= new Exp12(); 8) int y=2;

9) int z[] = {3}; 10) a.chang(y,z);

11) System.out.print(a.x); 12) System.out.print(y); 13) System.out.print(z[0]); 14) } 15) }

A) 123 B) 223 C) 224 D) 234。 46、下面程序哪些编译错误是存在的( )。

1) class exp13{

2) double fun(int x,int y,int z){ 3) if(x>y){

4) return x; 5) return z;

6) if(x>z) return true; 7) } 7) }

A) 第2行错误,方法缺少return语句;

B) 第4行错误,返回值类型不对,需要double型; C) 第5行错误,不可能执行的语句;

D) 第6行错误,返回值类型不对,需要double型;

47、对以下程序说法正确的有( )。

1) class Exp14{

2) static int x; 3) int y;

4) { x = 1;}

5) public static void main(String[] args){

6) Exp14 a,b;

7) a = new Exp14(); 8) b = new Exp14(); 9) System.out.print(x); 10) a.x = 2;

11) System.out.print(a.x); 12) System.out.print(++b.x);

13) System.out.print(++Exp14.x);; 14) } 15) }

A) 第4行错误,类中不能有有赋值语句;

B) 第9行错误,类中的变量必须带对象名引用;

资料