全国计算机软件水平考试程序员考证例题.docx
《全国计算机软件水平考试程序员考证例题.docx》由会员分享,可在线阅读,更多相关《全国计算机软件水平考试程序员考证例题.docx(7页珍藏版)》请在冰点文库上搜索。
全国计算机软件水平考试程序员考证例题
全国计算机软件水平考试程序员考证例题
例题2:
Howcanyouforcegarbagecollectionofanobject?
A.Garbagecollectioncannotbeforced
B.CallSystem.gc().
C.CallSystem.gc(),passinginareferencetotheobjecttobegarbagecollected.
D.CallRuntime.gc().
E.Setallreferencestotheobjecttonewvalues(null,forexample).
解答:
A
点评:
在Java中垃圾收集是不能被强迫立即执行的。
调用System.gc()或Runtime.gc()静态方法不能保证垃圾收集器的立即执行,因为,也许存在着更高优先级的线程。
所以选项B、D不正确。
选项C的错误在于,System.gc()方法是不接受参数的。
选项E中的方法可以使对象在下次垃圾收集器运行时被收集。
例题3:
Considerthefollowingclass:
1.classTest(inti){
2.voidtest(inti){
3.System.out.println(“Iamanint.”);
4.}
5.voidtest(Strings){
6.System.out.println(“Iamastring.”);
7.}
8.
9.publicstaticvoidmain(Stringargs[]){
10.Testt=newTest();
11.charch=“y”;
12.t.test(ch);
13.}
14.}
Whichofthestatementsbelowistrue?
(Chooseone.)
A.Line5willnotcompile,becausevoidmethodscannotbeoverridden.
B.Line12willnotcompile,becausethereisnoversionoftest()thatrakesacharargument.
C.Thecodewillcompilebutwillthrowanexceptionatline12.
D.Thecodewillcompileandproducethefollowingoutput:
Iamanint.
E.Thecodewillcompileandproducethefollowingoutput:
IamaString.
解答:
D
点评:
在第12行,16位长的char型变量ch在编译时会自动转化为一个32位长的int型,并在运行时传给voidtest(inti)方法。
例题4:
Whichofthefollowinglinesofcodewillcompilewithouterror?
A.inti=0;
if(i){
System.out.println(“
Hi”);
}
B.
booleanb=true;
booleanb2=true;
if(b==b2){
System.out.println(“Sotrue”);
}
C.
inti=1;
intj=2;
if(i==1||j==2)
System.out.println(“OK”);
D.
inti=1;
intj=2;
if(i==1|j==2)
System.out.println(“OKnterfaceShape{}
publicinterfaceRectandleextendsShape{}
C.publicinterfaceColorable{}
publicclassShapeimplementsColorable
{}
D.publicclassSpecies{}
publicclassAnimal{privateSpeciesspecies;}
E.interfaceComponent{}
classContainerimplementsComponent{
privateComponent[]children;
}
解答:
D,E
点评:
在Java中代码重用有两种可能的方式,即组合(“hasa”关系)和继承(“isa”关系)。
“hasa”关系是通过定义类的属性的方式实现的;而“isa”关系是通过类继承实现的。
本例中选项A、B、C体现了“isa”关系;选项D、E体现了“hasa”关系。
例题6:
Whichtwostatementsaretruefortheclassjava.util.TreeSet?
(Choosetwo)
A.Theelementsinthecollectionareordered.
B.Thecollectionisguaranteedtobeimmutable.
C.Theelementsinthecollectionareguaranteedtobeunique.
D.Theelementsinthecollectionareaccessedusingauniquekey.
E.Theelementsinthecollectionareguaranteedtobesynchronized
解答:
A,C
点评:
TreeSet类实现了Set接口。
Set的特点是其中的元素惟一,选项C正确。
由于采用了树形存储方式,将元素有序地组织起来,所以选项A也正确。
例题7:
TrueorFalse:
Readershavemethodsthatcanreadandreturnfloatsanddoubles.
A.Ture
B.False
解答:
B
点评:
Reader/Writer只处理Unicode字符的输入输出。
float和double可以通过stream进行I/O.
例题8:
Whatdoesthefollowing
paint()methoddraw?
1.publicvoidpaint(Graphicsg){
2.g.drawString(“Anyquestion”,10,0);
3.}
A.Thestring“Anyquestion?
”,withitstop-leftcornerat10,0
B.Alittlesquigglecomingdownfromthetopofthecomponent.
解答:
B
点评:
drawString(Stringstr,intx,inty)方法是使用当前的颜色和字符,将str的内容显示出来,并且最左的字符的基线从(x,y)开始。
在本题中,y=0,所以基线位于最顶端。
我们只能看到下行字母的一部分,即字母‘y’、‘q’的下半部分。
例题9:
Whathappenswhenyoutrytocompileandrunthefollowingapplication?
Chooseallcorrectoptions.
1.publicclassZ{
2.publicstaticvoidmain(String[]args){
3.newZ();
4.}
5.
6.Z(){
7.Zalias1=this;
8.Zalias2=this;
9.synchronized(alias1){
10.try{
11.alias2.wait();
12.System.out.println(“DONEWAITING”);
13.}
14.catch(InterruptedExceptione){
15.System.out.println(“INTERR
UPTED”);
16.}
17.catch(Exceptione){
18.System.out.println(“OTHEREXCEPTION”);
19.}
20.finally{
21.System.out.println
(“FINALLY”);
22.}
23.}
24.System.out.println(“ALLDONE”);
25.}
26.}
A.Theapplicationcompilesbutdoesntprintanything.
B.Theapplicationcompilesandprint“DONEWAITING”
C.Theapplicationcompilesandprint“FINALLY”
D.Theapplicationcompilesandprint“ALLDONE”
E.Theapplicationcompilesandprint“INTERRUPTED”
解答:
A
点评:
在Java中,每一个对象都有锁。
任何时候,该锁都至多由一个线程控制。
由于alias1与alias2指向同一对象Z,在执行第11行前,线程拥有对象Z的锁。
在执行完第11行以后,该线程释放了对象Z的锁,进入等待池。
但此后没有线程调用对象Z的notify()和notifyAll()方法,所以该进程一直处于等待状态,没有输出。
例题10:
Whichstatementorstatementsaretrueaboutthecodelistedbelow?
Choosethree.
1.publicclassMyTextAreaextendsTextArea{
2.publicMyTextArea(intnrows,intncols){
3.enableEvents(AWTEvent.
TEXT_
EVENT_MASK);
4.}
5.
6.publicvoidprocessTextEvent
(TextEventte){
7.System.out.println(“Processingatextevent.”);
8.}
9.}
A.ThesourcecodemustappearinafilecalledMyTextArea.java
B.Betweenlines2and3,acallshouldbemadetosuper(nrows,ncols)sothatthenewcomponentwillhavethecorrectsize.
C.Atline6,thereturntypeofprocessTextEvent()shouldbedeclaredboolean,notvoid.
D.Betweenlines7and8,thefollowingcodeshouldappear:
returntrue.
E.Betweenlines7and8,thefollowingcodeshouldappear:
super.processTextEvent(te).
解答:
A,B,E
点评:
由于类是public,所以文件名必须与之对应,选项A正确。
如果不在2、3行之间加上super(nrows,ncols)的话,则会调用无参数构建器TextArea(),使nrows、ncols信息丢失,故选项B正确。
在Java2中,所有的事件处理方法都不返回值,选项C、D错误。
选项E正确,因为如果不加super.processTextEvent(te),注册的listener将不会被唤醒。
全国计算机软件水平考试程序员考证例题相关内容: