java程序设计模拟试题一

  • 格式:doc
  • 大小:36.50 KB
  • 文档页数:3

下载文档原格式

  / 3
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

《Java程序设计》模拟试题一

一、选择题(每小题2分,共20分)

1.以下哪个是合法的标识符? ( C )

A. 3JavaProgram

B. class

C. Bird

D. this

2.( B )是在DOS提示符下解释JA V A程序的命令。

A. javac

B. java

C. javap

D. javadoc

3.Java程序中用来定义接口用到的关键字是( D )。

A. final

B. class

C. void

D. interface

4.经过编译后的Java程序的扩展名是( D )。

A. .class

B. .jar

C. .java

D. .exe

5.阅读下列代码:

Public class Test

{ Public static void main(String args[])

{

System.out.println((4<5)?3:2);

}

}

其运行结果是( B )。

A.2

B.3

C.4

D.5

6.有定义String place;以下说法不正确的是( A )。

A. place是一个字符串对象

B. place是一个引用

C. place没有关联对象,不能使用

D. place可以指向一个字符串对象

7.下列有关构造方法说法正确的是( C )。

A.类中的构造方法不可省略

B.构造方法必须与类同名,但方法不能与类同名

C.构造方法在一个对象被new时执行

D.一个类只能定义一个构造方法

8.Java语言中用( C )来表示逻辑“真”值。

A.整型值1

B.整型值0

C. true

D.false

9.判断下面陈述中那句话是错误的?( D )

A. 类的静态方法可以在该类的对象被创建前调用。

B. 类的静态方法不能访问该类的非静态方法。

C. abstract修饰的类是抽象类,不能实例化对象。

D. final可以出现在类和变量前,但不能出现在方法前。

10.Java程序中要用变量来存储学生性别信息,从节约内存空间的角度最好选择哪种数据类型

( C )。

A. int

B. float

C. boolean

D. String

评分标准:本题为单项选择题,每小题2分,共10道小题,共20分;每小题选对给2分,选错、多选、不选不给分也不扣分。

二、填空题(每空1分,共10分)1.面向对象语言具有以下三大特点:封装、继承和多态。

2.按照功能组织类和接口的名称空间称为包。

3.Throwable的两个直接子类是Error、Exception ,在方法头部声明方法可能会抛

出异常使用throws关键字。

4.abstract方法是一种仅有方法头,没有具体方法体和操作实现的方法,该方法必须在抽象

类之中定义。final 方法是不能被当前类的子类重新定义的方法。

5.创建一个名为mypackage的包的语句是package mypackage ,该语句应该放在程序的

位置为:第一条。

6.Java中所有类都是类Object 的子类。

三、简答题(每小题5分,共40分)

1.Java语言有什么特点?

答案要点:

java语言的特点如下:

简单性、可靠性、安全性、面向对象、平台无关、解释执行、分布式、多线程等。

评分标准:按要点给分。备注:只要写出六条即可给满分,其他情况酌情扣分。

2.结构化程序设计中有哪三种基本流程?分别对应JA V A中哪些语句?。

(1)顺序结构、分支结构、循环结构(2分)

(2)分别对应的语句是if语句、switch 语句、while语句、for语句等(3分)

评分标准:按要点给分。备注:基本流程少一个扣一分,对应的语句至少写出两条即可给满分,其他情况酌情扣分。

3.指出下列程序中的错误,并改正。

public class Main

{public static final A obj=null;

public static void main(String []args)

{obj=new A();

}

}

class A

{

}

(1)变量obj是个常量,只能赋值一次,上述代码对其重复进行赋值了(2分)

(2)将第二行的final关键字去掉。(3分)

评分标准:按要点给分。备注:本题答案不唯一,只要意思正确即可给分,其他情况酌情扣分。

4.请解释Java程序中异常处理的过程?

答案要点:

(1)try 中发生异常时,程序进入异常状态。有该类型异常的处理,进行异常处理,程序变为正常状态。无该类型异常的处理,仍为异常状态。(2分)

(2)到finally 部分,执行finally 中的语句。finally后的语句是否执行则取决于程序的状态:正常状态,执行;异常状态,则不执行。(3分)

评分标准:按要点给分。备注:本题答案不唯一,只要意思正确即可给分,其他情况

酌情扣分。

5.Java语言中整型常量有三种形式即八进制整数、十进制整数和十六进制整数。那么计算机如何区

别一个数到底是哪种形式呢?

答案要点:

十进制数以0~9开头(1分),八进制以O开头(2分),十六进制以OX开头(2分)。

评分标准:按要点给分。

6.比较实例变量与类变量有什么不同?解释变量的含义?

(1)变量是指在程序的执行过程中,其值可以改变的量。(1分)

(2)实例变量属于对象的,每个对象都具有自己的实例变量,互不干扰。(2分)

(3)类变量(即静态变量)是全局变量,所有的实例共享的变量。如果你在一个实例中改变了其值,那么所有的实例的这个变量的都会改变。(2分)

评分标准:按要点给分。备注:本题答案不唯一,只要意思正确即可给分,其他情况酌情扣分。

7.简述this和super关键字的含义?

答案要点:

(1)this 代表对象本身,super代表父类(2分)

(2)this访问的是属于同一个类中的成员变量,super访问的是被子类覆盖的方法或隐藏的变量。

(3分)

评分标准:按要点给分。备注:本题答案不唯一,只要意思正确即可给分,其他情况酌情扣分。

8.error和exception有什么区别?

答案要点:

(1)error 表示恢复不是不可能但很困难的情况下的一种严重问题。比如说内存溢出。不可能指望程序能处理这样的情况(2分)

(2)exception 表示一种设计或实现问题。也就是说,它表示如果程序运行正常,从不会发生的情况。(3分)

评分标准:按要点给分。备注:本题答案不唯一,只要意思表达正确即可给满分,有部分语法错误或语句不通顺也不扣分。

四、编程题(每题10分,共30分)

1.设计一个Fish类,它包含鱼类的基本属性,如名称、种类等,并设计相应的动作,如呼吸、游泳、

吃食等。

class Fish/2分

{String name;

String kind;

Fish(String name, String kind)//2分

{=name;

this.kind=kind;

}

void breathe()//2分

{System.out.println(“吐泡泡”);

}

void swim()//2分

{System.out.println(“游泳”);

}

void eat()//2分

{System.out.println(“吃虾米”);

}

}

评分标准:按要点给分。备注:本题答案不唯一,类的名字、变量名、方法名、参数值可以不相同,只要符合题目要求即可给分,若部分正确或者词不达意可酌情扣分。

2.按以下要求编写程序:(1) 编写轮船接口,接口中声明drive() 方法;(2) 定义客轮类和货轮类实

现轮船接口接口;(3) 编写客轮类和轮类的测试程序,并调用其中的drive()方法。

interface Steamer//2分

{void drive();

}

class Boat implements Car//2分

{void drive()

{System.out.println(“载人”);

}

}

class Freighter implements Car2分

{void drive()

{System.out.println(“运货”);

}

}

class Test

{public static void main(String []args)

{Boat b=new Boat();//1分

Freighter f=new Freighter();//1分

b.drive();//1分

f.drive();//1分

}

}

评分标准:按要点给分。备注:本题答案不唯一,类的名字、变量名、方法名、参数值可以不相同,只要符合题目要求即可给分,若部分正确或者词不达意可酌情扣分。

3.利用多态性编程,创建一个Shape(形状)类及其子类(三角形、圆形),实现求上述图形的周长。

abstract class Shape//2分

{abstract float getPerimeter();

}

class Triangle//3分

{float a,b,c;

Triangle(float a,float b,float c)

{this.a=a;

this.b=b;

this.c=c;

}

float getPerimeter()//1分

{ retrun a+bc

}

}

class Circle//3分