Java期末考试试卷答案A.pdf
JAVA程序设计试卷库(第5 套)一、单选题(每小题2分,共20分)1、Ja v a Ap p l i c a ti o n源程序的主类是指包含有(A)方法的类。A.m a i n方法B.to S tri n g 方法C.i n i t方法D.a c ti o n P e rf ro m e d 方法2、分析下面的程序段,下面的哪个描述是正确的。(B)c h a r m y c h a r=c;sw i tc h(m y c h a r)d e f a ul t:c a se a a );b re a k;c a se b b );b re a k;)A.sw i tc h语句块是错误的,因为sw i tc h后面的表达式值的类型不是整数;B.sw i tc h语句块是正确的;C.sw i tc h语句块是错误的,因为d e f a ul t没有放在语句块的最后面;D.代码运行时,没有任何输出结果。3、编译并运行下面的Ja v a程序,将产生(B)结果。c l a ss Ai n t v a rl=l;i n t v a r2;p ub l i c sta ti c v o i dm a i n(S tri n g a rg s)i n t v a r3=3;A a=n e w A();)A.0B.4C.3D.代码无法编译,因为v a r2根本没有被初始化4在Ja v a中,下面关于包的陈述中正确的是(D)。A.包的声明必须是源文件的任意位置;B.包的声明必须紧跟在i m p o rt语句的后面;C.只有公共类才能放在包中;D.可以将多个源文件中的类放在同一个包中5、在Ja v a语言中,当一个类的某个变量声明为p ro te c te d时下列说法正确的是(C)。A.只有同一类中的成员才能访问它;B.不i司包中的任何其他类都能够访问它;C.同包中的任何其他类能够访问它;D.不同包中的子类不可以访问该变量。6、在Ja v a中,执行下面的语句后,c的值为(D)。S tri n g s=Je ssi c a ;c h a r c=s.c h a rAt(6);A.cB.aC.,c,D.,a,7、设有下面两个赋值语句:a =In te g e r,p a rse l n t(u 1024v;b =In te g e r.v a l ue O f(u1024w).i n tV a l ue0;下述说法正确的是(D)。A.a是整数类型变量,b是整数类对象。B.a是整数类对象,b是整数类型变量。C.a和b都是整数类对象并且它们的值相等。D.a和b都是整数类型变量并且它们的值相等。8、事件剪裁类如W i n d o w Ad a p te r(它实现了 W i n d o w L i ste n e r接口)的优点是什么?(C)OA.继承了那个类的所有行为;B.子类自动成为监听器;C.没有必要实现不使用的任何W i n d o w L i ste n e r接口中定义的方法;D.可以自动充当事件的监听者。9、在用Ja v a构建动画时,(C)方法创建新线程并启动它运行。A.i n i t()B.sta rt()C.run()D.p a i n t()10、下面哪一个选项能正确地创建一个In p utS tre a m R e a d e r 对象(A)oA.n e w In p utS tre a m R e a d e r(n e wFi l e l n p utS tre a m(ad a tav)B.n e w In p utS tre a m R e a d e r(n e wFi 1e R e a d e r(“d a ta )C.n e w In p utS tre a m R e a d e r(n e wBuf f e re d R e a d e r(“d a ta )D.n e wIn p utS tre a m R e a d e r(“d a ta )二、填空题(每空格1分,共15分)1、阅读下面的程序片段,在中,p a re n t类与c h i l d类之间是_继承_ _ _关系;在中,p a re n t类与c h i Id类之间包 含 _。c l a ss p a re n ti n t f i e l d s;)c l a ss c h i l d e x te n d s p a re n t i n t f i e l d Ch i l d;)2、Ja v a中的多态有两种方式:子类对父类方法的覆盖_、同类中方法的重载3、下面程的输出结果是:_?吗对,上海自来水来自海上p u b l i c c l a s s t u r n S t r i n g p u b l i c s t a t i c v o i dm a i n(S t r i n g a r g s )S t r i n g s=上海自来水来自海上,对吗?”;fo r(i n ti=s.l en g t h()-1;i=0;i+)4、Ap p l et的)_ 方 法 仅 在 开 始 时执行一次?_ s t a r t(L方法在用户每次访问包含Ap p l et的H T M L文件时都被调用?5、创建一个Fl o w L a y o u t的对象f d,使应用该布局管理器的各个组件都向右对齐排列。该对象的创建语句为:Fl o w L a y o u t fd=n ewFl o w L a y o u t(Fl o w L a y o u t.R I G H T);_ _ _o6、j a v a,n et包中定义的两个类_S o c k et _、_S er v er S o c k et分别用来实现双向连接的Cl i en t和S er v er端。7、巳知a=14,b=3,则表达式知b运算结果为:_ 112;_ o8、写出运行下面程序片段后的屏幕输出:_ 0 1 2 i=3_。i n t i;fo r(i=0;i 5;i+)(i f(i=3)b r ea k;i+”);c l a氯s&艮 我p r i n t i n (i=+i)9、新 骑 囱A蜘W朴.程 序 中,一个券是主类的标志是包含m a i n()方忠,在J a y a Ap p l et程序中,一个类 修 服 题 屋 该 类 是Ap p l et类的子典.i l d m y Chi l o;d/玉的概念是 个程序中同名的不同方法共存的情况。_。三、判断改错题(每题2分,共20分)(正确的打错误的打义并说明原因)1、J a v a系统包提供了很多预定义类,我们可以直接引用它们而不必从头开始编写程序。(V )2、程序可以用字符*替代一个T ex t Fi el d中的每个字符的显示,使别人看不出其中的具体内容。(V)3、Cl a s s i类的属性被p r i v a t e修饰符修饰为私有变量,所以方法不能访问它。(义,C l as s i类自身的方法可以访问这个私有变量。)4、如果p是父类P ar en t的对象,而c是子类C hil d的对象,则语句c=p是正确的。(X,如果p实际代表的是一个子类对象的引用,可以用强制类型转换成c=(C hil d)p;否则不能把父类对象赋值给子类对象。)5、如果希望程序能够处理所有的异常,包括未知的异常,可以在所有的catch块后面加下catch(E x cep tion e)0(V )6、T ex tC omp on en t是一个抽象类,它的两个子类T ex tF iel d和T ex tA r ea才拥有具体的对象。(V)7、一个A p p l et程序在运行过程中,创建的F r ame窗框,当A p p l et或浏览器关闭时也会自动跟着关闭。(X,F r ame 与 A p p l et 平级,不受 A p p l et的关闭的影响。)8、判断下面程序片段的正确性。(X,V ector对象的addE l emen t()方法的参数类型为对象,所以my v.addE l emen t(i)应改为所以my v.addE l emen t(n ewI n teger(i);)imp or t jav a.u til.*;p u bl ic cl as s U s eV ector p u bl ic s tatic v oidmain(S tr in g ar gs )V ector my v=n ew V ector ();for(in t i=0;i 10;i+)my v.addE l emen t(i);9、在A p p l et中显示一幅图像,首先要把它调入内存,保存在一个I mage对象中,然后调用dr aw l mage()方法画出这个图像。(J)10、挂起、阻塞或等待的线程都能够恢复运行,但是停止运行的线程将不可能再运行(J)。四、问答题(每小题10分,共30分)1、阅读下面的程序片段,并回答问题。C l as s i被称为是C l as s 2的什么?C l as s 2被称为是C l as s i的什么?C l as s i有哪些属性和方法?C l as s 2有哪些属性和方法?其中哪些与C l as s i的属性和方法有关?cl as s C l as s i(in t fiel dl;p r iv ate in t fiel d2;v oid methodi()(“我是C l as s i的第一个方法”);)v oid method2()(“我是C l as s i的第二个方法”);)cl as s C l as s 2 ex ten ds C l as s iin t fiel dC hil dl;v oid methodchiI dl()(“我是C l as s 2的第一个方法”);1、阅读下面的程序片段,并回答问题。C l as s i被称为是C l as s 2的什么?C l as s 2被称为是C l as s i的什么?答:C l as s i被称为C l as s 2的父类,C l as s 2被称为是C l as s i的子类。C l as s i有哪些属性和方法?C l as s 2有哪些属性和方法?其中哪些与C l as s i的属性和方法有关?答:C l as s i包括属性fiel dl和f iel d2,方法 methodl 和method2;C l as s 2包括自身定义的属性fiel dC hil dl和自身定义的方法methodC hiI dl,以及它从父类继承来的属性fiel dl和方法“I am imp l emen ted n ow!);)3、说明下面程序是否有误,如有误,请将错误的地方指出来,并改正答:接口中的方法都是p u bl i c,所以重载方法也必须声明为p u bl i c.cl as s C h i l d e x t e nds Par e ndm e t h odi c m e t h od2o2、写出下面程序的功能p u bl i c v oi d m e t h odl()i m p or t j av a.awt.*;p u bl i c cl as s D at aT y p e e x t e nds Ap p l e t i m p l e m e r t f l s am i m p l e m e i t e d now!”);Act i onL i s t e ne r L abe l p r om p t=ne w L abe l (请分别输入整数和浮点数:);T e x t F i e l d i np u t _ i nt=ne w T e x t F i e l d(6)-但田/升 6 八、T i T _ T 蒸 用 J av a语百编写程序。(共15分)l e x t r i e l d i np u t _ dou b1e=ne w l e x t r i e l d(b?;T e x t F i e l d ou t p u t=ne w T e x t F i e l d(35);假设用户输入一组整数被保存在i nt g e t l nt;dou bl e g e t D ou bl e;V e ct or 对象中,请定义一个类p u bl i c v oi d i ni t ()v e cS or t,用来求 V e ct or对象中整数add(p r om p t);add(i np u t _ i nt);add(i np u t 4f l的最或和最小数据。add(ou t p u t);ou t p u t.s e t E di t abl e (f al s e)要求:i np u t _ dou bl e.addAct i onL i s t e ne r (t h i s);1、根据题目给出 v e cS or t 类应包含)的属性和方法(5分)p u bl i c v oi d act i onPe r f or m e d(Act i onE v e nt 滤用 J av a 语言定类 v e cS or t (10g e t l nt=l nt e g e r.p ar s e l nt (i np u t _ i nt.g e t T e x 1);g e t D ou b1e=D ou b1e.p ar s e D ou bl e(i np u tou t p u t.s e t T e x t (您输入了整数:+g e盗 翱 软 瞬 露 程 序。(共15分),z+g e t D ou bl e);)2、写出下列程序完成的功能答:功能:从图形界面输入一个整数和一个浮点数,然后将其输出来。3、说明下面程序段是否有误,如有误,请将错误的地方指出来,并改正参考代码:cl as s v e cS or t-in t max,min;-V e ct or x=ne w V e ct or ();v e cS or t (V e ct or y)(f or (i nti=0;i y.s i ze();i+)I nt e r f ace M y l nt e r f acev oi d m e t h odi ();)abs t r act cl as s Par e nt i m p l e m e nt scl as s C h i l d e x t e nds Par e ndx.addE l e m e nt(y.e l e m e r t At(i);)i nt g e t m ax ()丫 (I nt e g e r)(x.e l e m e nt At (0).i nt V al u e O;f or (i nt i=l;i x.s i ze();i+)v oi d m e t h odi ()if(max(Integer)(x.elementAt(i)intValue()max=(Integer)(x.elementAt(i).intValueO;return max;int getmin()min=(Integer)(x.elementAt(0).intValue();for(int i=l;i(Integer)(x.elementAt(i).intValue 0)min=(Integer)(x.elementAt(i).intValue();return min;)