您好,欢迎来到莱农美食网。
搜索
您的当前位置:首页java面向对象程序设计》考试卷及答案带注释

java面向对象程序设计》考试卷及答案带注释

来源:莱农美食网
一、单选题(每小题1分,共30分)

1.在MyEclipse中,()视图可以将项目中包含的文件及层次结构展示出来。C

A) Package B)Declaration C)Navigator D) Console

2.下列标识符中,正确的是()。C

A)class B) 123_rr C) _lei D) test&12

3.下列的()选项可以正确用以表示八进制值8。0x代表16进制,0代表8进制 D A)0x8 B)0x10 C)08 D)010

4.以下哪个不是Java的原始数据类型()D

A) int B) boolean C) float D) Char引用数据类型

5.下列有关Java布尔类型的描述中,正确的是()A

A)一种基本的数据类型,它的类型名称为boolean

B)用int表示类型

C)其值可以赋给int类型的变量

D)有两个值,1代表真,0代表假

6.在Java中,不属于整数类型变量的是( ) A

A) double 浮点型B) long C) int D) byte

7.以下do-while语句构成的循环执行次数是()。B

int k=0;

do { ++k ;}while(k<1);

A) 一次也不执行B) 执行1次C) 无限次D) 有语法错误,不能执行8.表达式(1/0<1)&& (12==0) 的值为()。逻辑运算结果只有true和false两种 B

A) true B) false C) 0 D) 运行时抛出异常

9.以下()表达式不可以作为循环条件 A

A) i=5 B )i<3 C) count==i D)

bEqual=str.equals("q")

10.下列数组初始化正确的是() D

A) int score[5] = {90,12,34,77,56};

B) int[5] score = new int[];

C) int[] score = new int[5]{90,12,34,77,56};

D) int score[] = new int[]{90,12,34,77,56};

11.若有定义:byte[] x={11,22,33,-66};

其中0≤k≤3,则对x数组元素错误的引用是() C

A) x[5-3] B) x[k] C) x[k+5] D) x[0]

12.以下代码的输出结果是()。 D

public static void main(String[] args){

for(int i=1;i<=10;i++){

if(i%2==0||i%5==0){

continue;

}

}

}

A) 1 B) 1 3 4 C) 1 3 5 7 9 D) 1 3 7 9

13.下列()选项的java源文件代码片段是不正确的。 B

A) package testpackage; B) import java.io.* ;

public class Test{} package testpackage;

public class Test{}

C) import java.io.* ; D) import java.io.* ;

class Person{} import java.awt.* ;

public class Test{} public class Test{}

14.为了在当前程序中使用包ch4中的类,可以使用的语句是()。 A

A) import ch4.*; B) package ch4.*;

C) import ch4; D) package ch4;

15.下面说法中不正确的是:() C

A) 类是对象的抽象,对象是类的实例 B) 类是组成java程序的最小的单位

C) java语言支持多继承单 D) java一个程序中只能有一个public 类

16.对于下面的不完整的类代码,下面表达式中,()可以加到构造方法中的横线处。 C

class person{

String name,department;

public void person(String n){

name=n;

}

public person(String n,String d){

_______________

department=d;

}

}

person p = new person(“jim”);

person p = new person(“jim”,”jsjx”);

A)person(n) B)this(person(n)) C)this(n)D)this(n,a);

17.构造方法何时被调用?( ) B

A)类定义时B)创建对象时C)调用对象方法时 D)使用对象的变量时

18.定义一个类名为“MyClass.java”的类,并且该类可被一个工程中的所有类访问,那么该类的正确声明应为 ( )。C

(A)private class MyClass extends Object

(B)class MyClass extends Object

(C)public class MyClass

(D)private class MyClass extends Object

19.方法重载是指 ( ) A

(A)两个或两个以上的方法取相同的方法名,但形参的个数或类型不同

(B)两个以上的方法取相同的名字和具有相同的参数个数,但形参的类型可以不同

(C)两个以上的方法名字不同,但形参的个数或类型相同

(D)两个以上的方法取相同的方法名,并且方法的返回类型相同

20.如果编写一个main()方法调用HelloA类的show()方法,其运行结果是()。A

public class HelloA{

int a=100,b=50;

public void avg(){

float c=(a+b)/2;

}

public void show(){

“ + c);

}

}

A)存在错误,提示:无法解析c

B)平均值为:75

C)平均值为:75.0

D)存在错误,提示:无法将数据类型int转换为float

21.对于下列代码:

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) }

12) }

第10行语句将调用哪行语句?() D

A) line 2 B) line 3 C) line 6 D) line 7

22.阅读下面代码:

class parent{

protected int addvalue(int a,int b){

int s; s=a+b; return s;

}

}

class child extends parent{

}

若要在child类中对addvalue方法进行重写,下面对于child类中的addvalue方法头的描述()是正确的。D

A)int addvalue(int i,int j) B)void addvalue()

C)void addvalue(double i) D)public int addvalue(int a,int b) 23.下列哪个类声明是正确的( ) D

A) abstract final class H1{…}B) abstract private move(){…}

C) protected private number;D) public abstract class Car{…}

24.Java中所有类的父类是 D

A)Father B)Lang C)Exception D)Object

25.编译如下Java代码,输出结果是()。B

class Base{

public void method(){

}

}

class Child extends Base{

public void method(){

}

}

class Sample{

public static void main(String[] args){

Base base=new Child();

base.method();

}

}

A) Base method B) Child method

C) Base method Child method D) 编译错误

26.下列Java代码中Test类中的四个输出语句的输出结果依次是()。C class Person{

String name="person";

public void shout(){

}

}

class Student extends Person{

String name="student";

String school="school";

}

class Test{

public static void main(String[] args){

Person p=new Student();

}

}

A) true、false、true、false B) false、true、false、true

C) true、true、true、编译错误D) true、true、false、编译错误

27.以下关于接口的说法中,正确的是()。 D

A) 接口中全部方法都是抽象方法,方法可以是任意访问权限

B) 接口中属性都是使用public static final修饰,没有显式赋值将使用默认值

C) 接口可以有构造方法

D) 接口表示一种约定,接口表示一种能力,接口体现了约定和实现相分离的原则

28.给定如下Java代码,可以填入横线处的语句是()。C

public interface Constants{

int MAX = 50;

int MIN = 1;

}

public class Test{

public static void main(String[] args){

_________________

}

}

A) Constants con = new Constants(); B) Constants.MAX = 100;

C) int i = Constants.MAX-Constants.MIN ;D) Constants.MIN>0;

29.请问所有的异常类皆继承哪一个类?()。C

30.对于catch子句的排列,下列哪种是正确的( ) B

A)父类在先,子类在后B)子类在先,父类在后

C)有继承关系的异常不能在同一个try程序段内

D)先有子类,其他如何排列都无关

二、填空题(每空2分,共20分)

1.Java有___JavaSE________、___ JavaEE_________和JavaME三个版本。

2.Java 源程序文件编译后产生的文件称为__字节码__________文件,其扩展名为___.class________。

3.面向对象编程的三大特性是__封装__________、_____继承________和多态。

4.____抽象(或abstract)_______方法是一种仅有方法头,没有具体方法体和操作实现的方法,该方法必须在抽象类之中定义。_____final______方法是不能被当前类的子类重新定义的方法。

5.子类必须通过__super_____关键字调用父类有参数的构造函数。

6.在Java程序中,通过类的定义只能实现单重继承,但通过_____接口_______ 的定义可以实现多重继承关系。

三、阅读理解题(每题4分,共20分)

1.下列程序段的运行结果为______6________。

int a=1;

while(a<5){

switch(a){

case 0:

case 3:a=a+1;

case 1:

case 2:a=a+2;

}

}

2.下列程序段的运行结果为_____1 4 9 total is 14_________。

class test1{

public static void main(String args[]) {

int y,x=1,total=0;

while(x<=3){

y=x*x;

total+=y; ++x;

}

}

}

3.下列程序段的运行结果为_____10.0_________。

class Q1{

public static void main(String args[ ]){

double d=10;

Dec dec=new Dec( );

dec.decrement(d);

}

}

class Dec{

public void decrement(double decMe){

decMe = decMe -5;

}

}

4.下列程序段的运行结果为______a=60 b=20 c=30________。public class abc{

public static void main(String args[ ]){

SubSubClass x = new SubSubClass(10 , 20 , 30); x.show();

}

}

class SuperClass{

int a,b;

SuperClass(int aa , int bb){

a=aa; b=bb;

}

void show( ) {

}

}

class SubClass extends SuperClass{

int c;

SubClass(int aa,int bb,int cc){

super(aa,bb); c=cc;

}

}

class SubSubClass extends SubClass {

int a;

SubSubClass(int aa,int bb,int cc) {

super(aa,bb,cc); a=aa+bb+cc;

}

void show(){

}

}

5.下列程序段的运行结果为____234__________。

public class Test{

public static void foo(int i){

try{

if(i==1){

throw new Exception();

}

}catch(Exception e){

}finally{

}

}

public static void main(String[] args){ foo(1);

}

}

图2

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- lnnr.cn 版权所有

违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务