南京信息工程大学滨江学院Java程序设计试卷B卷_第1页
南京信息工程大学滨江学院Java程序设计试卷B卷_第2页
南京信息工程大学滨江学院Java程序设计试卷B卷_第3页
南京信息工程大学滨江学院Java程序设计试卷B卷_第4页
南京信息工程大学滨江学院Java程序设计试卷B卷_第5页
已阅读5页,还剩14页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

南京信息工程大学滨江学院2023-2023学年第1学期《Java程序设计》B卷一、单选题(每小题2分,共30分)1、下面哪个不属于Java语言的关键字(A)。A、constB、nativeC、finalD、finally2、void的含义:(C)。A.方法体为空B.定义的方法没有形参C.

定义的方法没有返回值D.

方法的返回值不能参与算术运算3、main方法是JavaApplication程序执行的入口点,关于main方法的方法头以下哪项是合法的?(B)A、publicstaticvoidmain()B、publicstaticvoidmain(Stringargs[])C、publicstaticintmain(String[]arg)D、publicvoidmain(Stringarg[])4、下面关于数组的使用,不对的的是(D)。A、inta[]={1,2,3};B、inta[][]={{1,2},{3,4}};C、inta[]=newint[6]for(inti=0;i<6;i++)a[i]=i*I;D、inta[][]=newint[2][];inta[1]=newint[4];inta[2]=newint[5];5、应用程序的main方法中有以下语句,则输出的结果是(C)。Stringobj=newString("abcxyz");for(inti=obj.length()-1;i>0;i--)System.out.print(obj.charAt(i));A、zyxcbaB、xyzC、zyxcbD、abcxyz6、以下有关构造函数的说法,对的的是:(A)。A.一个类的构造函数可以有多个B.构造函数在类定义时被调用C.构造函数只能由对象中的其它方法调用。D.构造函数可以和类同名,也可以和类名不同7、以下有关类的继承的说明中,对的的是:(D)。A.

子类能直接继承父类所有的非私有属性,也可通过接口继承父类的私有属性B.子类只能继承父类的方法,不能继承父类的属性C.子类只能继承父类的非私有属性,不能继承父类的方法D.

子类不能继承父类的私有属性8、以下有关类的构造函数继承的说明,对的的是:(C)。A.子类继承父类的构造函数,但不能自己定义B.子类可定义自己的构造函数,但受父类定义的构造函数的限制C.子类和父类均可独自定义自己的构造函数,但执行时的顺序有规定D.

如父类定义了构造函数,则子类只能继承父类的构造函数,不能自己定义9、下面函数,哪一组不属于方法重载(A)。A、intfun(inta,intb,floatc){…}floatfun(intb,inta,floatc){…}B、intfun(inta,intb){…}intfun(inta,inta,floatc){…}C、intfun(inta){…}intfun(inta,intb){…}D、intfun(inta,floatb){…}intfun(floatb,inta){…}10、this和super的使用中,对的的是:(D)。A.都是指一个内存地址B.可以在同一个方法定义中出现C.意义相同D.以上都不对11、应用程序main方法中有以下语句,则输出的结果是(A)。Strings="java@123456@";intn=s.indexOf("@"); //n=4intk=s.indexOf("@",5); //k=11 Strings2=s.substring(n+1,k); //s2=123456 System.out.println(s2);A、123456B、javaC、@D、512、阅读下面程序,请问哪种说法是对的的(D)。packagemp1;classBase{intfriend_data=1;publicintpublic_data=2;privateintprivate_data=3; protectedintprotected_data=4;}//anotherjavasourcefilepackagemp2;classDerivedextendsBase{Basea=newBase(); voiddataUse(){ System.out.println(a.friend_data); System.out.println(a.public_data); System.out.println(a.private_data); System.out.println(tected_data);}}A、Derived类可以正常运营,dataUse()方法可以访问Base对象a中的friend_data、public_data、private_data和protected_data。B、Derived类不能正常运营,dataUse()方法可以访问Base对象a中的friend_data、public_data和protected_data;但无法访问private_data。C、Derived类不能正常运营,dataUse()方法可以访问Base对象a中的public_data和protected_data;但无法访问friend_data和private_data。D、Derived类不能正常运营,它无法访问Base类以及其任何成员。13、若创建RandomAccessFile类对象raf2:RandomAccessFileraf2=newRandomAccessFile("1.txt","rw"),该语句的功能是(B)。A、打开当前目录下的文献1.txt,但只能向文献写入数据,不能从文献读取数据。B、打开当前目录下的文献1.txt,既可以向文献写入数据,也可以从文献读取数据。C、打开当前目录下的文献1.txt,但不能向文献写入数据,只能从文献读取数据。D、以上说法都不对。14、给出下面代码,关于该程序以下哪个说法是对的的?(C)publicclassPerson{staticintarr[]=newint[5];publicstaticvoidmain(Stringa[]){System.out.println(arr[0]);}}A、编译时将产生错误 B、编译时对的,运营时将产生错误C、输出零 D、输出空15、以下哪个关键字可以用来对对象加互斥锁?(B)A、transient B、synchronizedC、serialize D、static二、判断题(每空1分,共10分)1、通过String类说明的对象实例在程序运营过程中是不可以更改的。(√)2、语句int[][]a=newint[3][4]可以创建一个整型二维数组。(√)3、在一个类结构中,假如自定义了一个带参数的构造函数,则隐含了一个无参数构造函数。(×)4、applet标记中的code用来指定Applet所在的HTML文献的URL。(×)5、Java的每个子类的构造函数都要显式的调用它的直接父类的构造函数。(×)6、在同一个Java源程序文献中只能有一个标记为public的类。(√)7、Java语法格式中允许各种数据类型间进行互相转换。(×)8、标记为friendly的类或变量可以被所在包中各类访问。(√)9、子类覆盖父类中的同名方法时,其访问权限可以是任意的。(×)10、执行以下程序段:

Strings=null;

If((s!=null)||(s.length()>0));后没有异常和错误发生。(×)三、简答题(每小题5分,共20分)1、说明final和static各自的作用。2、试解释方法覆盖和方法重载的区分3、试说明抽象类和接口的异同点。4、java中有哪几种访问控制符?并说明各自的作用范围。四、程序阅读题(每小题5分,共20分)1、以下程序的输出结果为。classStringTest1{ publicstaticvoidmain(String[]args) { Strings1="hello"; Strings2=newString("hello"); if(s1.equals(s2)){ System.out.println("相等"); }else{ System.out.println("不相等"); } }}2、写出以下程序的运营结果。publicclassTryCatchFinally{

staticvoidProc(intsel){

try{

if(sel==0){System.out.println("noException");

return;} elseif(sel==1){inti=0;intj=4/i;} }

catch(ArithmeticExceptione){

System.out.println("Catch");}

catch(Exceptione){

System.out.println("Willnotbeexecuted");} finally{

System.out.println("finally"); }

}publicstaticvoidmain(Stringargs[]){

Proc(0); Proc(1); }

}3、阅读以下程序,写出输出结果。classAnimal{Animal(){System.out.print("Animal");}}PublicclassDogextendsAnimal{Dog(){System.out.print("Dog");}publicstaticvoidmain(String[]args){Dogsnoppy=newDog();}}读以下程序段:classTest{publicstaticvoidmain(String[]ar){Strings;charc;intupper,lower;upper=lower=0;s=ar[0];for(inti=0;i<s.length();i++){c=s.charAt(i);if(c>=’a’&&c<=’z’)lower++;if(c>=’A’&&c<=’Z’)upper++;}System.out.println(upper+“”+lower);}}若在命令行输入:javaTesthotJAVA,则输出结果为。五、编程题(第1题8分,第2题12分,共20分)1.编写一个采用随机函数生成句子的游戏。现有4个字符串数组:article,noun,verb,preposition,他们的内容分别为:the,a,one,some,any;boy,girl,dog,town,car;run,drove,jumped,walked,skipped;to,from,over,under,on。依照句法规定:article+noun+verb+preposition,编写程序以产生20个句子。(8分)2.学期末我们都要对本班同学进行年终测评,其中涉及到加权平均成绩的排序问题,请用java编辑一个程序:实现本学期的本班同学的排序,并按名次输出。(说明:规定34课时的课程加权值为2;51学时的课程加权值为3;68学时的课程加权值为4,功能细节问题可自由发挥。此外假定可以导入mypg.InputData类!)(12分)/**假定本班本学期有五门课程:英语(68学时)、高数(68学时)、操作系统(51学时)、*Java(34学时)、Web程序设计(34学时)。*/

答案:南京信息工程大学滨江学院2023-2023学年第1学期《Java程序设计》B卷答案一、选择题(每小题2分,共30分)12345ACBDC678910ADCAB1112131415ADBCB二、判断题(每空1分,共10分)1、(√)2、(√)3、(×)4、(×)5、(×)6、(√)7、(×)8、(√)9、(×)10、(×)三、简答题(每小题5分,共20分)1、说明final和static各自的作用。答:(1)final表达最终的,修饰类时表达该类不能被其他任何类所继承;修饰方法时表达该方法不会被覆盖;修饰变量时表达该变量只能被赋值一次。(2.5分)Static(静态)表达类层次上全局共享的,一般用于修饰变量或方法:static变量表达类的变量(相对于实例变量),可以通过类名直接调用;static方法表达类方法,它属于整个类,即使不创建任何对象,也可使用静态方法。(2.5分)2、试解释方法覆盖和方法重载的区分答:重载是指在同一个类中有若干同名而参数不同的方法,这个类的对象使用不同的参数可以调用同名方法的不同版本。(2.5分)覆盖是指在子类中用与父类中完全相同的方法(方法名、返回类型和参数相同),重新构造了父类的这一个成员方法。(2.5分)3、试说明抽象类和接口的异同点。答:(1)接口中定义的方法均为抽象的和公共的,仅有方法说明,没有方法体;接口中定义的变量均为publicfinalstaic的。而抽象类只要方法中有一个抽象方法即可。(3分)(2)抽象类只能“单一继承”;接口支持“多继承”。(1分)(3)接口用关键字Interface定义,抽象类用abstractclass定义。(1分)4、java中有哪几种访问控制符?并说明各自的作用范围。答:java中具有四种访问控制符:公有的(public)、友元的(friendly或为空)、保护的(protected)、私有的(private)。(1分)(1)公有的public的可访问范围涉及外包,本包,本类任何范围;(1分)(2)友元的friendly的可访问范围仅限于本包,本类范围,外包无法访问;(1分)(3)保护的protected的可访问范围仅限于本包,本类,以及外包的继承子类,外包非子类无法访问;(1分)(4)私有的private的可访问范围仅限于本类,本包或外包其他类无法访问。(1分)四、程序阅读题(每小题5分,共20分)1.相等2.noExceptionFinallyCatchFinally3.AnimalDog4.43五、编程题(共20分)1.编写一个采用随机函数生成句子的游戏。现有4个字符串数组:article,noun,verb,preposition,他们的内容分别为:the,a,one,some,any;boy,girl,dog,town,car;drove,jumped,walked,skipped;to,from,over,under,on。依照句法规定:article+noun+verb+preposition,编写程序以产生20个句子。(8分)解:参考代码如下:publicclassSentence{/*实现article+noun+verb+preposition造句 */ publicstaticvoidmain(String[]args){//初始化字符串数组1分 Stringarticle[]={"the","a","one","some","any"}; Stringnoun[]={"boy","girl","dog","town","car"}; Stringverb[]={"drove","jumped","walked","skipped"}; Stringpreposition[]={"to","from","over","under","on"}; Stringst[]=newString[20]; intm,n,j,k; for(inti=0;i<20;i++){//采用循环结构(20次),1分 m=(int)(Math.random()*article.length);//随机获取句子构成部分,//随机获取句子构成部分,4分 j=(int)(Math.random()*verb.length); k=(int)(Math.random()*preposition.length); st[i]=article[m]+""+noun[n]+""+verb[j]+""+preposition[k];//1分 } //输出这20个句子(该功能可以不写) for(inti=0;i<20;i++){//输出结果,1分 System.out.println(st[i]); } }}3.学期末我们都要对本班同学进行年终测评,其中涉及到加权平均成绩的排序问题,请用java编辑一个程序:实现本学期的本班同学的排序,并按名次输出。(说明:规定34课时的课程加权值为2;51学时的课程加权值为3;68学时的课程加权值为4,功能细节问题可自由发挥。此外假定可以导入mypg.InputData类!)(12分)/**假定本班本学期有五门课程:英语(68学时)、高数(68学时)、操作系统(51学时)、*Java(34学时)、Web程序设计(34学时)。*/答:代码参考如下:importjava.io.*;importmypg.InputData;//创建Grade类,记录学生的分数2分classGrade{ inteng,mat,opr,jav,web; Grade() { System.out.print("英语(68学时)成绩:"); eng=InputData.iRead(); System.out.print("高数(68学时):"); mat=InputData.iRead(); System.out.print("操作系统(51学时):"); opr=InputData.iRead(); System.out.print("Java(34学时):"); jav=InputData.iRead(); System.out.print("Web程序设计(51学时):"); web=InputData.iRead(); } intget_aver() { return(eng*4+mat*4+opr*3+jav*2+web*2)/16; }}//创建Student类,相应每一个学生2分classStudent{ Stringname; intid,aver; Gradeg=newGrade(); Student(Stringname,intid) { =name; this.id=id; aver=g.get_aver()}}publicclassApp4{//程序的主类 publicstaticvoidmain(Stringargs[])throwsIOException { intsum=0,r=0; System.out.print("本班学生人数:"); intn=InputData.iRead(); Studentstu[]=newStudent[n];//输入学生的学号、姓名和各科成绩2分 System.out.println("请输入本班"+n+"位同学成绩信息。。。"); for(inti=0;i<n;i++) { System.out.print("学号:"); intid=InputData.iRead(); System.out.print("姓名:"); BufferedReaderin=newBufferedReader(newInputStreamReader(System.in)); S

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论