欢迎来到天天文库
浏览记录
ID:40157088
大小:255.01 KB
页数:66页
时间:2019-07-23
《ocjp考试题库》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、1.Given:1.publicclassreturnIt{2.returnTypemethodA(bytex,doubley){3.return(short)x/y*2;4.}5.}WhatisthevalidreturnTypeformethodAinline2?A.intB.byteC.longD.shortE.floatF.doubleAnswerF注释:short类型的x,除以double类型的y,再乘int的2,所以结果是double类型的。注意第三行的强制转换,只是转换了x。2.1)classSuper{2
2、)publicfloatgetNum(){return3.0f;}3)}4)5)publicclassSubextendsSuper{6)7)}whichmethod,placedatline6,willcauseacompilererror?A.publicfloatgetNum(){return4.0f;}B.publicvoidgetNum(){}C.publicvoidgetNum(doubled){}D.publicdoublegetNum(floatd){return4.0d;}Answer:B注意这道题主要
3、考的是方法的overload和override。对于overload,只有参数列表不同,才做为标准,而返回值和访问控制关键字不能做为标准,所以B错在方法名相同,但只有返回值不同,这是错的。C和D是正确的overload。对于override,则访问控制关键字只能更加公有化,异常只能是超类方法抛出的异常的子类,也可以不抛出。返回类型,参数列表必须精确匹配。所以A是正确的override。3.1)publicclassFoo{2)publicstaticvoidmain(Stringargs[]){3)try{return;
4、}4)finally{System.out.println("Finally");}5)}6)}whatistheresult?A.Theprogramrunsandprintsnothing.B.Theprogramrunsandprints“Finally”.C.Thecodecompiles,butanexceptionisthrownatruntime.D.Thecodewillnotcompilebecausethecatchblockismissing.Answer:btry......catch......
5、finally的问题。程序中如果遇到return,则finally块先被执行,然后再执行retrun,而finally块后面的语句将不被执行。如果遇到System.exit(1),则finally块及其后的语句都不执行,整个程序退出,还执行什么呀。4.1)publicclassTest{2)publicstaticStringoutput="";3)publicstaticvoidfoo(inti){4)try{5)if(i==1){6)thrownewException();7)}8)output+="1";9)}10
6、)catch(Exceptione){11)output+="2";12)return;13)}14)finally{15)output+="3";16)}17)output+="4";18)}19)publicstaticvoidmain(Stringargs[]){20)foo(0);21)foo(1);22)23)}24)}whatisthevalueofoutputatline22?Asnwer:13423执行第一个foo(0)时,执行第8条语句,output=1,然后执行语句15,output=13,然后是17
7、条,output=134,因为是static类型的变量,所以任何对其值的修改都有效。执行第二条foo(1),先执行语句5,结果抛出异常,转到catch块,output=1342,finally任何情况下都执行,所以output=13423,然后return跳出方法体,所以output=134235.1)publicclassIfElse{2)publicstaticvoidmain(Stringargs[]){3)if(odd(5))4)System.out.println("odd");5)else6)System.o
8、ut.println("even");7)}8)publicstaticintodd(intx){returnx%2;}9)}whatisoutput?Answer:编译错误。if中的判断条件的结果必须是boolean类型的。注意这里说的是结果.6.@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
此文档下载收益归作者所有