java程序设计模拟试题一
- 格式:doc
- 大小:36.50 KB
- 文档页数:3
《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分