上JAVA试题A答案.docx
- 文档编号:18590630
- 上传时间:2023-08-19
- 格式:DOCX
- 页数:12
- 大小:19.65KB
上JAVA试题A答案.docx
《上JAVA试题A答案.docx》由会员分享,可在线阅读,更多相关《上JAVA试题A答案.docx(12页珍藏版)》请在冰点文库上搜索。
上JAVA试题A答案
2008–2009学年第1学期考试方式:
开卷[]闭卷[√]
课程名称:
Java语言程序设计
使用班级:
计算机科学与技术(医学智能信息处理方向)06
班级:
学号:
姓名:
一单项选择题(本题总分40分,每小题2分)
1、编译JavaApplication源程序文件将产生相应的字节码文件,这些字节码文件的扩展名为(B)。
A.javaB..class
C..htmlD..exe
2、下列哪个类声明是正确的?
(D)
A、abstractfinalclassHI{···}B、abstractprivatemove(){···}
C、protectedprivatenumber;D、publicabstractclassCar{···}
3、 为了防止在你的程序中出现运行时的错误,你可以采取下面哪些措施?
(C)
A. 在finally块中写可执行代码。
B. 在catch块中写代码,并在同一块中捕获例外。
C. 在try块中写可执行语句,并在catch块中捕获例外。
D. 在try块外写可执行语句,将例外抛到try块内,并在catch块内捕获例外。
4、Javaapplication中的主类需包含main方法,main方法的返回类型是什么?
(D)
A、intB、floatC、doubleD、void
5、下列关于Java对import语句规定的叙述中,错误的是(C).
A在Java程序中import语句可以有多个
B在Java程序中import语句可以没有
C在Java程序中import语句必须有一个
D在Java程序中import语句必须引入在所有类定义之前
6、以下关于构造函数的描述错误的是(A)。
A、构造函数的返回类型只能是void型。
B、构造函数是类的一种特殊函数,它的方法名必须与类名相同。
C、构造函数的主要作用是完成对类的对象的初始化工作。
D、一般在创建新对象时,系统会自动调用构造函数。
7、下列的哪个赋值语句是正确的?
(D)
A)chara=12L; B)inta=12.0;
C)inta=12.0f;D)inta=(int)12.0;
8、下列关于继承的哪项叙述是正确的?
D
A)在java中允许多重继承
B)在java中一个类只能实现一个接口
C)在java中一个类不能同时继承一个类和实现一个接口
D)java的单一继承使代码更可靠
9、在Java中,一个类可同时定义许多同名的方法,这些方法的形式参数个数、类型或顺序
各不相同,传回的值也可以不相同。
这种面向对象程序的特性称为(C)
A、隐藏B、覆盖C、重载D、Java不支持此特性
10、以下自定义标识符中哪项是不合法的(A)
A、constB、$doubleC、helloD、BigMeaninglessName
11、类Test1、Test2定义如下:
1.publicclassTest1
2.{publicfloataMethod(floata,floatb)throws
3.IOException{}
4.}
5.publicclassTest2extendsTest1{
6.
7.}
将以下哪种方法插入行4是不合法的。
(A)
A、floataMethod(floata,floatb){}
B、publicintaMethod(inta,intb)throwsException{}
C、publicfloataMethod(floatp,floatq){}
D、publicintaMethod(inta,intb)throwsIOException{}
12、以下哪个接口的定义是正确的?
(D)
A、interfaceB
{voidprint(){};}
B、abstractinterfaceB
{voidprint();}
C、abstractinterfaceBextendsA1,A2//A1、A2为已定义的接口
{abstractvoidprint(){};}
D、interfaceB
{voidprint();}
13、以下关于继承的叙述正确的是(A)。
A、在Java中类只允许单一继承
B、在Java中一个类只能实现一个接口
C、在Java中一个类不能同时继承一个类和实现一个接口
D、在Java中接口只允许单一继承
14、给出下列代码,如何使成员变量m被方法fun()直接访问?
(C)
classTest
{
privateintm;
publicstaticvoidfun()
{
...
}
}
A)将privateintm改为protectedintm
B)将privateintm改为publicintm
C)将privateintm改为staticintm
D)将privateintm改为intm
15、已知有下列类的说明,则下列哪个语句是正确的?
(A)
publicclassTest
{
privatefloatf=1.0f;
intm=12;
staticintn=1;
publicstaticvoidmain(Stringarg[])
{
Testt=newTest();
}
}
A)t.f; B)this.n; C)Test.m; D)Test.f;
16、给出下面代码,关于该程序以下哪个说法是正确的?
(C)
publicclassPerson{
staticintarr[]=newint[5];
publicstaticvoidmain(Stringa[])
{
System.out.println(arr[0]);}
}
A、编译时将产生错误B、编译时正确,运行时出错
C、输出零D、输出空
17、下列代码的执行结果是(A)
publicclassTest
{
publicintaMethod()
{
staticinti=0;
i++;
System.out.println(i);
}
publicstaticvoidmain(Stringargs[])
{
Testtest=newTest();
test.aMethod();
}
}
A)编译错误 B)0 C)1 D)运行成功,但不输出
18、设有下面两个赋值语句:
(D)
a=Integer.parseInt(“12”);
b=Integer.valueOf(“12”).intValue();
下述说法正确的是()。
A、a是整数类型变量,b是整数类对象。
B、a是整数类对象,是整数类型变量。
C、a和b都是整数类对象并且值相等。
D、a和b都是整数类型变量并且值相等。
19、publicclassTest{
staticbooleanfoo(charc){
System.out.print(c);
returntrue;
}
publicstaticvoidmain(String[]argv){
inti=0;
for(foo('A');foo('B')&&(i<2);foo('C')){
i++;
foo('D');
}
}
}
Whatistheresult?
(A)
A.ABDCBDCB
B.ABCDABCD
C.Compilationfails.
D.Anexceptionisthrownatruntime.
20、publicclasstest{
privatestaticintj=0;
privatestaticbooleanmethodB(intk){
j+=k;
returntrue;
}
publicstaticvoidmethodA(inti){
booleanb;
b=i<10||methodB(4);
b=i<10||methodB(8);
}
publicstaticvoidmain(Stringargs[]){
methodA(0);
System.out.println(j);
}
}
Whatistheresult?
A
A.Theprogramprints“0”
B.Theprogramprints“4”
C.Theprogramprints“8”
D.Theprogramprints“12”
E.Thecodedoesnotcomplete.
二程序阅读(写出程序运行的结果,本题总分20分,每小题5分)
1.写出如下程序运行的结果_____1234______.
publicclassTest{
publicstaticvoidchangeStr(Stringstr){
str="welcome";
}
publicstaticvoidmain(String[]args){
Stringstr="1234";
changeStr(str);
System.out.println(str);
}
}
2.写出如下程序运动的结果____26______.
publicclassA
{
publicstaticvoidmain(String[]args)
{System.out.println(test(15,26,4));}
staticinttest(intx,inty,intz)
{returntest(x,test(y,z));}
staticinttest(intx,inty)
{if(x>y)returnx;
elsereturny;}
}
3写出程序运行结果___5.0_Caughtnegative____
classMyExceptionextendsException{
publicStringtoString(){return"negative";}
}
publicclassExceptionDemo{
publicstaticvoidmySqrt(inta)throwsMyException{
if(a<0)thrownewMyException();
System.out.println(Math.sqrt(a));
}
publicstaticvoidmain(Stringargs[]){
try{mySqrt(25);mySqrt(-5);}
catch(MyExceptione){System.out.println("Caught"+e);}
}
}
4阅读以下程序,写出输出结果____inSecondclass_____。
classFirst{
publicFirst(){
aMethod();}
publicvoidaMethod(){
System.out.println(“inFirstclass”);}
}
publicclassSecondextendsFirst{
publicSecond(){
aMethod();}
publicvoidaMethod(){
System.out.println(“inSecondclass”);}
publicstaticvoidmain(String[]args){
newSecond();}
}
三程序填空题(本题总分10分,每小题5分)
1.下面程序对数组中每个元素赋值,然后按逆序输出.请在横线处填入适当内容,使程序能正常运行.
Importjava.io.*;
publicclasstest{
publicstaticvoidmain(Stringargs[]){
inti;
inta[]=newint[5];
for(i=0;i<5;i++)
a[i]=i;
for(______;i>=0;i--)
System.out.println("a["+i+"]="+a[i]);
}
}
2.下面是一个Applet程序,其功能是接收用户输入的两个整数,比较它们的大小,并在用户按下“比较”按钮后,将Applet中显示的“请先输入两个待比较的整数”,改为“两个整数中最大值是:
x”,x是两个数中的最大值.
publicclassFindMaxextendsAppletimplementsActionListener{
Labelresult;
TextFieldin1,in2;
Buttonbtn;
doublea=0,b=0,max;
publicvoidinit(){
result=newLabel("请先输入两个待比较的整数");
in1=newTextField(5);
in2=newTextField(5);
btn=newButton("比较");
add(in1);
add(in2);
add(btn);
add(result);
btn.addActionListener(this);
}
publicvoidactionPerformed(ActionEvente){
a=______________________
b=_______________________
if(a>b)
max=a;
else
max=b;
result.setText("两个数中最大值是:
"+max);
}
}
四编程题(本题总分30分)
1、(10分)编写一个字符界面的JavaApplication程序,接受用户输入的10个整数,并输出
这10个整数的最大值和最小值。
importjava.util.Scanner;
publicclassMyClass{
publicstaticvoidmain(String[]args){
Scannerscn=newScanner(System.in);
intnum[]=newint[10];
System.out.println("输入"+num.length+"个整数:
");
for(inti=0;i try{ System.out.print("第"+(i+1)+"个整数: "); num[i]=Integer.parseInt(scn.nextLine()); }catch(Exceptione){ System.out.print("输入不正确,请重新输入"); i--; } } intmax=0,min=0; for(inti=0;i if(num[i]>num[max]){ max=i; } if(num[i] min=i; } } System.out.println("最大值为第"+(max+1)+"个整数"+num[max]); System.out.println("最小值为第"+(min+1)+"个整数"+num[min]); } } 2、(20分)现在有一接口Shape,其定义如下: PublicinterfaceShape(){ PublicabstractdoubleArea()throwsShapeException; PublicdoubleCircum(); } 异常类定义: publicclassShapeExceptionextendsException{ privatestaticfinallongserialVersionUID=1L; publicvoidprintStackTrace(){ System.out.println("ShapeException"); } } Area()用来求面积,可能会抛出异常,Circum()用来求周长,请定义两个类Circle和 Triangle,代表圆和三角形,分别实现该接口,在类中具体实现接口中的抽象方法。 再定 义一个应用程序类(主类)Main_Class,在该类中创建Circle和Triangle的实例,要求用 Shape的变量S1来先后引用这两个实例,并调用其中的两个方法,并输出方法的执行结 果,在调用方法过程中,要求对可能抛出异常的方法进行异常处理,处理的措施是调用 printStackTrace()方法。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- JAVA 试题 答案