还剩1页未读,继续阅读
文本内容:
武汉大学计算机学院《面向对象程序设计》试卷(A)(2015-2016学年第2学期)[开卷,试卷共2页,答题时间120分钟]学号姓名专业班号(说明请将答案写在答题纸上,并标明题号,否则不得分)
一、简答题(每小题6分,共42分)
1.何谓面向对象的程序设计?与面向过程的程序设计相比有哪些优势?
2.方法覆盖Override和方法重载Overload的区别和联系是什么?
3.接口与抽象类有何相似之处,又有哪些区别?
4.Java的事件处理机制是如何实现的?
5.何谓缓冲流?它的工作机理和用途是什么?
6.与传统的容错纠错机制相比较,异常处理有哪些优势?
7.finalfinallyfinalize各自有何含义,作用分别是什么?
二、程序阅读题(3题,共28分)
1.阅读给出的程序段,指出其中的错误并改正之(10分)classCA{publicCA{}}classCBextendsCA{publicCBStringInfo{super;}}interfaceIA{intnum=1;voidmethod;}interfaceIB{intnum=3;voidmethod;}classCCextendsCACBimplementsIAIB{publicstaticvoidmainString[]args{method;}publicvoidmethod{}}
2.阅读给出的程序段,写出其运行结果(12分)publicclassTestMainClass{publicstaticvoidmainString[]args{A[]oArray=newB
[6];intsum1=0sum2=0;forinti=0;ioArray.length;i++{oArray[i]=newBi;sum1+=oArray[i]._value;sum2+=BoArray[i]._value;}Aaa=newA;Aab=newB10;aa.go;ab.go;}}classA{publicint_value=1;publicA{_value=2;}publicvoidgo{}}classBextendsA{publicint_value=3;publicBintvalue{_value=value;}publicvoidgo{}}
3.阅读下面的程序,指出该程序实现了哪些功能(6分)importpublicclassTestCode2{publicstaticvoidmainString[]argsthrowsMalformedURLException{URLurlFilefile=newFile“C://page.html”;try{URLConnectionconnection=url.openConnection;BufferedInputStreamiStream=newBufferedInputStreamconnection.getInputStream;BufferedOutputStreamoStream=newBufferedOutputStreamnewFileOutputStreamfile;byte[]buff=newbyte
[1024];intlen=0;do{len=iStream.readbuff;oStream.writebuff0len;}whilelen0iStream.close;oStream.close;}catchIOExceptione{e.printStackTrace;}}}
三、编程题(3题,共30分)
1.定义用于计算的Sum类和Prod类,它们实现各自的calc方法(同名方法),在Sum实现的calc中计算输出1~n的和,Prod实现的calc中计算输出1~n的乘积要求用抽象类和接口两种方法分别实现(12分)
2.编写程序,将一个文本文件中的内容以行为单位,按行调整为倒序排列(即第一行为最后一行)(8分)
3.编写一个多线程Applet,实现简单的动画具体要求为以一定的时间间隔,在绘图区中心依次绘出半径由小变大的圆,圆到达绘图区边界后重新开始由小变大的过程(10分)。