java期末考试题.docx
- 文档编号:14938326
- 上传时间:2023-06-28
- 格式:DOCX
- 页数:100
- 大小:44.27KB
java期末考试题.docx
《java期末考试题.docx》由会员分享,可在线阅读,更多相关《java期末考试题.docx(100页珍藏版)》请在冰点文库上搜索。
java期末考试题
一、选择题(每道题只有一个正确答案,每小题2分,共30分)15道题
1、关于Java语言叙述错误的是:
(C)
A.Java语言具有跨平台性
B.Java是一种面向对象的语言
C.Java语言中的类可以多继承
D.Java的垃圾收集机制自动回收程序已不再使用的对象
2、以下叙述正确的是:
(B)的确台a
A.构造方法必须是public方法
B.main方法必须是public方法
C.Java应用程序的文件名可以是任意的
D.构造方法应该声明为void类型
3、关于Java中数据类型叙述正确的是:
(B)
A、整型数据在不同平台下长度不同
B.boolean类型数据只有2个值,true和false
C.数组属于简单数据类型
D.Java中的指针类型和C语言的一样
4、设intx=1,floaty=2,则表达式x/y的值是:
(D)
A.0
B.1
C.2
D.以上都不是
5、以下语句有语法错的是:
(A)
A.intx=1;y=2;z=3
B.for(intx=10,y=0;x>0;x++);
C.while(x>5);
D.for(;;);
6、关于类和对象的叙述正确的是:
(A)
A.Java的类分为两大部分:
系统定义的类和用户自定义的类
B.类的静态属性和全局变量的概念完全一样,只是表达形式不同
C.类的成员至少有一个属性和一个方法
D.类是对象的实例化
7、以下有关构造方法的说法,正确的是:
(A)
A.一个类的构造方法可以有多个
B.构造方法在类定义时被调用
C.构造方法只能由对象中的其它方法调用
D.构造方法可以和类同名,也可以和类名不同
8、以下有关类的继承的叙述中,正确的是:
(D)
A.子类能直接继承父类所有的非私有属性,也可通过接口继承父类的私有属
性
B.子类只能继承父类的方法,不能继承父类的属性
C.子类只能继承父类的非私有属性,不能继承父类的方法
D.子类不能继承父类的私有属性
9、下列属于容器的组件有:
(B)
A.JButton
B.JPane
C.Canvas
D.JTextArea
10、void的含义:
(C)
A.方法体为空
B.定义的方法没有形参
C.定义的方法没有返回值
D.方法的返回值不能参加算术运算
11、关于Java中异常的叙述正确的是:
(D)
A.异常是程序编写过程中代码的语法错误
B.异常是程序编写过程中代码的逻辑错误
C.异常出现后程序的运行马上中止
D.异常是可以捕获和处理的
12、所有的异常类皆继承哪一个类?
(C)
A.java.io.Exception
B.java.lang.Throwable
C.java.lang.Exception
D.java.lang.Error
13、下面哪个不是java语言中的关键字?
(B)
A.long
B.sizeof
C.instanceof
D.const
14、为实现进程之间的通信,需要使用下列那种流才合适?
(D)
A.Datastream
B.Filestream
C.Bufferedstream
D.Pipedstream
15、在复选框中移动鼠标,然后单击一选项,要捕获所选项必需实现哪个接口?
(D)
A.ActionListener
B.MouseListener
C.MouseMotionListern
D.ItemListener
二、填空题(每空1分,共20分)
1、面向对象程序设计所具有的基本特征是:
___抽象性___,_封装性___,_继承
性__,_多态性__
2、数组x定义如下
intx[][]=newint[3][2]
则x..length的值为____3________,
x[0].length的值为_____2_______。
3、Java中实现多线程一般使用两种方法,一是___继承Thread类_________,
二是_____实现Runnable方法__________
4、Java的图形用户界面设计中,有很多布局管理器用来摆放组件的位置,一般
用到的布局管理器有(列出四种即可)__FlowLayout_____,___GridLayout_____,
__BorderLayout_____,___CardLayout_______
5、Applet常用的方法是:
__init()_、__run()__、__stop()__和destroy()。
三、阅读程序,写出程序的输出结果(每题5分,共20分)
1、classA{
privateintprivateVar;
A(int_privateVar){
privateVar=_privateVar;
}
booleanisEqualTo(AanotherA){
if(this.privateVar==anotherA.privateVar)
returntrue;
else
returnfalse;
}
}
publicclassB{
publicstaticvoidmain(Stringargs[]){
Aa=newA
(1);
Ab=newA
(2);
System.out.println(a.isEqualTo(b));
}
}
程序的输出结果为:
____false_____
2、classA{
doublef(doublex,doubley){
returnx*y;
}
}
classBextendsA{
doublef(doublex,doubley){
returnx+y;
}
}
publicclassTest{
publicstaticvoidmain(Stringargs[]){
Bobj=newB();
System.out.println("Theprogramoutputis"+obj.f(4,6));
}
}
程序的输出结果为:
__Theprogramoutputis10_
3、publicclassUnchecked{
publicstaticvoidmain(String[]args){
try{
method();
}catch(Exceptione){
System.out.println("A");
}finally{
System.out.println("B");
}
}
staticvoidmethod(){
try{
wrench();
System.out.println("C");
}catch(ArithmeticExceptione){
System.out.println("D");
}finally{
System.out.println("E");
}
System.out.println("F");
}
staticvoidwrench(){
thrownewNullPointerException();
}
}
程序的输出结果为:
E
A
B
4、publicclassTest{
publicstaticvoidmain(String[]args){
intx;
inta[]={0,0,0,0,0,0};
calculate(a,a[5]);
System.out.println("thevalueofa[0]is"+a[0]);
System.out.println("thevalueisa[5]is"+a[5]);
}
staticintcalculate(intx[],inty){
for(inti=1;i if(y x[i]=x[i-1]+1; returnx[0]; } } 程序的输出结果为: thevalueofa[0]is0 thevalueisa[5]is5 一、单选择题(每小题2分,共10分) 1、编译JavaApplication源程序文件将产生相应的字节码文件,这些字节码文 件的扩展名为()。 A..javaB..class C..htmlD..exe 2、设x=1,y=2,z=3,则表达式y+=z--/++x的值是()。 A.3B.3.5 C.4D.5 3、在JavaApplet程序用户自定义的Applet子类中,一般需要重载父类的() 方法来完成一些画图操作。 A.start()B.stop() C.init()D.paint() 4、不允许作为类及类成员的访问控制符的是()。 A.publicB.private C.staticD.protected 5、为AB类的一个无形式参数无返回值的方法method书写方法头,使得使用类 名AB作为前缀就可以调用它,该方法头的形式为()。 A.staticvoidmethod()B.publicvoid method() C.finalvoidmethod()D.abstractvoid method() 二、填空题(每空格1分,共20分) 1、开发与运行Java程序需要经过的三个主要步骤 为、 和。 2、如果一个JavaApplet源程序文件只定义有一个类,该类的类名为MyApplet, 则类MyApplet必须是类的子类并且存储该源程序文件的文件名为。 3、如果一个JavaApplet程序文件中定义有3个类,则使用Sun公司的JDK编 译 器编译该源程序文件将产生个文件名 与类名相同而扩展名为的字节码文件。 4、在Java的基本数据类型中,char型采用Unicode编码方案,每个Unicode码 占 用字节内存空间,这样,无论是中文字符还是英文字符,都是 占 用字节内存空间。 5、设x=2,则表达式(x++)/3的值是。 6、若x=5,y=10,则x 7、方法是一种仅有方法头,没有具体方法体和操作实现的方法,该方法必须在抽象类之中定义。 方法是不能被当前类的子类重新定义的方法。 8、创建一个名为MyPackage的包的语句 是, 该语句应该放在程序的位置 为: 。 9、设有数组定义: intMyIntArray[]={10,20,30,40,50,60,70};则执 行以下几个语句后的输出结果是。 ints=0; for(inti=0;i if(i%2==1)s+=MyIntArray[i]; System.out.println(s); 10、在Java程序中,通过类的定义只能实现重继承,但通过接口的 定义可以实现重继承关系。 三、写出下列程序完成的功能。 (每小题5分,共20分) 1、publicclassSum {publicstaticvoidmain(Stringargs[]) {doublesum=0.0; for(inti=1;i<=100;i++) sum+=1.0/(double)i; System.out.println("sum="+sum); } } 2、importjava.io.*; publicclassReverse {publicstaticvoidmain(Stringargs[]) {inti,n=10; inta[]=newint[10]; for(i=0;i try{ BufferedReaderbr=newBufferedReader( newInputStreamReader(System.in)); a[i]=Integer.parseInt(br.readLine());//输入一个整数 }catch(IOExceptione){}; for(i=n-1;i>=0;i――) System.out.print(a[i]+""); System.out.println(); } } 3、importjava.awt.*; publicclassabc {publicstaticvoidmain(Stringargs[]) {newFrameOut();} } classFrameOutextendsFrame//Frame为系统定 {Buttonbtn;//义的窗框 类 FrameOut() {super("按钮"); btn=newButton("按下我"); setLayout(newFlowLayout()); add(btn); setSize(300,200); show(); } } 4、importjava.io.*; publicclassabc {publicstaticvoidmain(Stringargs[]) {SubClasssb=newSubClass(); System.out.println(sb.max()); } } classSuperClass {inta=10,b=20;} classSubClassextendsSuperClass {intmax(){return((a>b)? a: b);}} 四、写出下面程序的运行结果(每小题10分,共30分) 1、importjava.io.*; publicclassabc {publicstaticvoidmain(Stringargs[]) {ABs=newAB("Hello! ","IloveJAVA."); System.out.println(s.toString()); } } classAB{ Strings1; Strings2; AB(Stringstr1,Stringstr2) {s1=str1;s2=str2;}publicStringtoString() {returns1+s2;} } 2、importjava.io.*; publicclassabc { publicstaticvoidmain(Stringargs[]) {inti,s=0; inta[]={10,20,30,40,50,60,70,80,90}; for(i=0;i if(a[i]%3==0)s+=a[i]; System.out.println("s="+s); } } 3、importjava.io.*; publicclassabc { publicstaticvoidmain(Stringargs[]) ) {System.out.println("a="+a+"\nb="+b);} } classSubClassextendsSuperClass {intc; SubClass(intaa,intbb,intcc) {super(aa,bb); c=cc;} } classSubSubClassextendsSubClass {inta; SubSubClass(intaa,intbb,intcc) {super(aa,bb,cc); a=aa+bb+cc; } voidshow() {System.out.println("a="+a+"\nb="+b+"\nc="+c);} } 五、使用Java语言编写程序。 (每小题10分,共20分) 1、编写一个字符界面的JavaApplication程序,接受用户输入的10个整数, 并输出这10个整数的最大值和最小值。 2、编写一个完整的JavaApplet程序使用复数类Complex验证两个复数1+2i 和3+4i相加产生一个新的复数4+6i。 复数类Complex必须满足如下要求: (1)复数类Complex的属性有: RealPart: int型,代表复数的实数部分 ImaginPart: int型,代表复数的虚数部分 (2)复数类Complex的方法有: Complex(): 构造函数,将复数的实部和虚部都置0 Complex(intr,inti): 构造函数,形参r为实部的初值,i为虚部的初 值。 ComplexcomplexAdd(Complexa): 将当前复数对象与形参复数对象相 加,所得的结果仍是一个复数值,返回给此方法的调用者。 StringToString(): 把当前复数对象的实部、虚部组合成a+bi的字符串 形式,其中a和b分别为实部和虚部的数据。 《JAVA语言程序设计》期末考试模拟试题 参考答案及评分标准 一、单选择题(每小题2分,共10分) 1、B2、A3、D4、C5、A 二、填空题(每空格1分,共20分) 1、编辑源程序、编译生成字节码、解释运行字节码 2、Applet、MyApplet 3、javac.exe、3、.class 4、2、2 5、0 6、true、false 7、抽象(abstract)方法、最终(final)方法 8、packageMyPackage;应该在程序第一句。 9、120 10、单、多 三、写出下列程序完成的功能。 (每小题5分,共20分) 1、计算1/1+1/2+1/3+...+1/100的值。 2、从标准输入(即键盘)读入10个整数存入整型数组a中,然后逆序输出这10 个整数。 3、创建一个标题为"按钮"的窗框,窗框中显示有"按下我"字样的按钮。 4、求两个数的最大值。 四、写出下面程序的运行结果(每小题10分,共30分) 1、Hello! IloveJAVA. 2、s=180 3、a=60 b=20 c=30 五、使用Java语言编写程序。 (每小题10分,共20分) 1、参考程序如下: importjava.io.*;publicclassabc { publicstaticvoidmain(Stringargs[]) {inti,n=10,max=0,min=0,temp=0; try{ BufferedReaderbr=newBufferedReader( newInputStreamReader(System.in)); max=min=Integer.parseInt(br.readLine()); }catch(IOExceptione){}; for(i=2;i<=n;i++){ try{ BufferedReaderbr=newBufferedReader( newInputStreamReader(System.in)); temp=Integer.parseInt(br.readLine()); if(temp>max)max=temp; if(temp }catch(IOExceptione){}; } System.out.println("max="+max+"\nmin="+min); }} 2、参考程序如下: importjava.applet.*; importjava.awt.*; publicclassabcextendsApplet { Complexa,b,c; publicvoidinit() { a=newComplex(1,2); b=newComplex(3,4); c=newComplex(); } publicvoidpaint(Graphicsg) { c=plexAdd(b); g.drawString("第一个复数: "+a.toString(),10,50); g.drawString("第二个复数: "+b.toString(),10,70); g.drawString("两复数之和: "+c.toString(),10,90); } } classComplex { intRealPart;//复数的实部 intImaginPart;//复数的虚部 Complex(){RealPart=0;ImaginPart=0;} Complex(intr,inti) {RealPart=r;ImaginPart=i;} ComplexcomplexAdd(Complexa) { Complextemp=newComplex();//临时复数对象 temp.RealPart=RealPart+a.RealPart; temp.ImaginPart=ImaginPart+a.ImaginPart; returntemp; } publicStringtoString() {return(RealPart+"+"+ImaginPart+"i");} } 一、判断题 2、Java的源代码中定义几个类,编译结果就生成几个以“.class”后缀 的字节码文件。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- java 期末 考试题