java程序设计期末复习题库.docx
- 文档编号:5246402
- 上传时间:2022-12-14
- 格式:DOCX
- 页数:18
- 大小:27.58KB
java程序设计期末复习题库.docx
《java程序设计期末复习题库.docx》由会员分享,可在线阅读,更多相关《java程序设计期末复习题库.docx(18页珍藏版)》请在冰豆网上搜索。
java程序设计期末复习题库
第一章JAVA语言概述
1.在Java中,负责对字节代码解释执行的是( )。
A.垃圾回收器B.虚拟机C.编译器D.多线程机制
2.下列叙述中,正确的是()。
A.Java语言的标识符是区分大小写的
B.源文件名与public类名可以不相同
C.源文件扩展名为.jar
D.源文件中public类的数目不限
3.main()方法的返回类型是()。
A、intB、voidC、booleanD、static
4、编译JavaApplication源程序文件将产生相应的字节码文件,这些字节码文件的扩展名为()。
A..javaB..classC..htmlD..exe
5、下列哪些语句关于垃圾回收机制的说明是正确的()
A.程序员必须创建一个线程来释放内存
B.垃圾回收线程负责释放无用内存
C.垃圾回收机制允许程序员直接释放内存
D.垃圾回收线程可以在指定的时间释放内存对象
6、下列特点不属于Java语言的选项是()。
A.易用性B.可视性C平台无关性D面向对象性
7、下列描述中,错误的是
A、Java要求编程者管理内存
B、Java的安全性体现在多个层次上
C、Applet要求在支持Java的浏览器上运行
D、Java有多线程机制
8、JDK中提供的文档生成器是
A、java.exe B、javap.exe C、javadoc.exe D、javaprof.exe
9、Java为移动设备提供的平台是()
A、J2ME B、J2SE C、J2EE D、JDK5.0
10.Java源文件后缀名为
(1),编译生成的字节码文件的后缀是
(2)。
11.下列说法中,不正确的一项是()。
A、Java程序有两类:
Application和Applet
B、类的方法只能由public修饰
C、面向对象的程序设计的优点有:
可重用性、可扩展性、可管理性
D、Java语言通过接口支持多重继承
13.如果将类MyClass声明为public,它的文件名称必须是
(1)才能正常编译,编译生成的字节码文件的后缀是
(2)。
。
14、main方法的声明格式统一为__(13)____。
15、面向对象技术的三个特点是封装、继承和__(17)____。
16、编写一个输出"HelloWorld!
"的程序,用两种方式实现(Application、Applet)
第二章JAVA语言基础
1、如下哪些是Java中正确的整数表示()
A、22B、22.0C、-22.03D、22H
2、执行invoke方法后的输出结果是
publicStringchangePara(Strings){
s=s+"a";}
publicvoidinvoke(){
Strings="b";
changePara(s);
System.out.println(s);}
3、设有数组定义:
intMyIntArray[]={10,20,30,40,50,60};则执行以下几个语句后的输出结果是________
ints=0;
for(inti=0;i if(i%2==1)s+=MyIntArray[i]; System.out.println(s); 4、用I/O流输入一个整数,编程判断该数是否为素数。 5、编译运行以下程序后,关于输出结果的说明正确的是() publicclassConditional{ publicstaticvoidmain(Stringargs[]){ intx=1; System.out.println(“valueis“+((x<1)? 1.0: 0)); } } A、输出结果为: valueis1.0B、输出结果为: valueis0 C、输出结果为: valueis0.0D、编译错误 6、若数组a定义为int[][]a=newint[3][4],则a是 A、一维数组 B、二维数组 C、三维数组 D、四维数组 7、写出以下程序的输出结果。 publicclassEqualsMethod{ publicstaticvoidmain(String[]args){ Integern1=newInteger(12); Integern2=newInteger(12); System.out.print(n1==n2); System.out.print(“,”); System.out.println(n1! =n2); } } 8、写出以下程序的输出结果。 classLabelBreak{ publicstaticvoidmain(String[]args){ intx=20; Label1: { System.out.print(“one,”); if(x>10)breakLabel1; System.out.print(“two,”); } System.out.println(“three”); } } 9、编写一个Java程序,用来计算汇款额。 如果汇款额小于100元,则收取1元的费用。 如果汇款额大于100元而小于5000元,则按汇款额除以100作为收取的费用。 如果汇款额大于5000元,则收取50元的费用。 在命令行输入汇款额,在控制台输出应付的费用(如输入javaCount4001.4,则输出“应付汇款费用40.014元”) 10、选出合法的标识符 A、+sys1_lllB、2mailC、$changeD、class 11、以下代码段执行后的输出结果为()。 intx=3;floaty=10.0f; System.out.println(y%x); A、不能成功编译B、-1.0C、1.0D、-1 12、指出下列程序运行的结果。 publicclassExample{ Stringstr=newString("good"); char[]ch={'a','b','c'}; publicstaticvoidmain(Stringargs[]){ Exampleex=newExample(); ex.change(ex.str,ex.ch); System.out.print(ex.str+"and"); Sytem.out.print(ex.ch); } publicvoidchange(Stringstr,charch[]){ str="testok"; ch[0]='g'; } } 13.Java中有八种基本数据类型,其英文名称分别是: short、byte、(5)、(6)、float、(7)、(8)、char。 14.在Java语言中,布尔常量只有(9)和(10)两个值。 15.设有如下的程序代码,在执行完后x、y和z的值分别是(18)、(19)和(20)、 intx=8,y=2,z; x=++x*y; z=x/y++; 16.有以下方法的定义,该方法的返回类型ReturnType应为()。 ReturnTypemethod(bytex,doubley) {return(short)x/y*2;} A、byteB、shortC、intD、double 17、编写一个Java程序,求1! +3! +5! +……+9! 的值,并输出结果。 18.在Java中定义一个字符串类型的变量str的语句是: (3),定义一个具有10个元素的整型数组a的语句是: (4)。 19.下列不属于Java保留字的一个是()。 A、elseB、UnicodeC、charD、static 20.有语句Strings=”helloworld”;,以下操作哪个是不合法的? () A、inti=s.length();B、s>>>=3; C、Stringts=s.trim();D、Stringt=s+”! ”; 21.若x=5,y=10,则x 22.下列程序段执行后,t3的结果是(18)。 intt1=2,t2=3,t3;t3=t1 t1: t2+t1; 23.以下哪个不是Java的关键字? () A、TRUEB、constC、superD、void 24.下列程序中,给出两个整数2和3,要求调用Count类的方法method()来输出两数的和,输出结果如“2+3=5”,请将程序补充完整。 publicclassCount{ publicstaticvoidmain(String[]args){ intnl=2,n2=3: Countobj=newCount(); ___________________;\\调用method方法输出计算结果 } publicvoidmethod(intx,inty){ System.out.println(__________);\\输出x、y两数的和 } } 25、执行下列语句: intm,n,i=3,j=2;m=i++;n=--j; 则m=__(6)___、n=__(7)____、i=__(8)___、j=__(9)__。 26、设有数组的定义int[]a=newint[3];,则下面对数组元素的引用错误的是()。 (A)a[0];(B)a[a.length-1];(C)a[3];(D)inti=1;a[i]; 27、下列属于合法的Java标识符是()。 (A)_cat(B)5books(C)+static(D)-3.14159 28、下面的代码段中,执行之后count的值是() intcount=1; for(inti=1;i<=5;i++) count=count+i; System.out.println(count); (A)5(B)1(C)15(D)16 29.转义字符‘\n’的含义是_______。 30.阅读下列代码 public class Person{ int arr[]=new int[10]; public static void main(String args[]){ System.out.println(arr[1]); } } 正确的说法是 ()。 A. 编译时将产生错误 B. 编译时正确,运行时将产生错误 C. 输出零 D. 输出空 31.inta=10,b=11,c=12;表达式(a+b) 32、设x=1,y=2,z=3,则表达式y+=z--/++x的值是()。 A.3B.3.5C.4D.5 第三章类与对象 1.定义类的关键字为_______。 2._______方法,不需要类的实例化对象,可以直接通过类名来调用。 3.构造方法的方法名必须与_______名相同。 使用运算符_______创建类的对象,给对象分配内存空间。 4.下列构造方法的调用方式中,正确的是()。 A.按照一般方法调用B.由用户直接调用 C.只能通过new自动调用D.被系统调用 5.下列代码中,将引起一个编译错误的行是()。 1)public class Test{ 2) int m,n; 3) public Test() {} 4) public Test(int a) {m=a;} 5) public static void main(String args[]){ 6) Test t1,t2; 7) int j,k; 8) j=0;k=0; 9) t1=new Test(); 10) t2=new Test(j,k); 11) } 12)} A.第3行 B.第5行 C.第6行 D.第10行 6.在Java中,由Java编译器自动导入,而无需在程序中用import导入的包是()。 A.java.appletB.java.awtC.java.utilD.java.lang 7.在Java中,用package说明一个包时,该包的层次结构必须是()。 A.与文件的结构相同B.与文件目录的层次相同 C.与文件类型相同D.与文件大小相同 8、不是类及类成员的访问修饰符的是()。 A.publicB.privateC.staticD.protected 9、为A类的一个无参数无返回值的方法method书写方法头,使用类名A作为前缀就可以调用它,该方法头的形式为_______。 10、以下关于构造函数的描述错误的是()。 (A)构造函数的返回类型只能是void型。 (B)构造函数是类的一种特殊函数,它的方法名必须与类名相同。 (C)构造函数的主要作用是完成对类的对象的初始化工作。 (D)一般在创建新对象时,系统会自动调用构造函数。 11、写一个Circle类,有成员属性radius,成员方法getArea()。 在Circle类基础上定义圆柱体类Cylinder,新增属性height、成员方法getVolume()。 定义一个类Run,计算底面半径为3,高为5圆柱体的体积,并打印输出。 (15分) 12、假设A类有如下定义,设a是A类的一个实例,下列语句调用哪个是错误的() classA {inti; staticStrings; voidmethod1(){} staticvoidmethods(){} } A.System.out.println(a.i);B.a.method1(); C.A.method1();D.A.method2(); 13、写出以下程序的输出结果。 classTest{ staticintnum; intc; publicTest(){ num++; } publicstaticvoidmain(String[]args){ Testx=newTest(); System.out.print(x.num); x=newTest(); System.out.print(x.num); x=newTest(); System.out.println(x.num); } } 14.可以通过类名直接调用的方法是______方法。 15.创建一个名为mypackage的包的语句是______,该语句应放在程序的位置为__________。 16.设有下面两个赋值语句: a=Integer.parseInt(“123”); b=Integer.valueOf(“123”).intValue(); 下述说法正确的是()。 A、a是整数类型变量,b是整数类对象。 B、a是整数类对象,b是整数类型变量。 C、a和b都是整数类对象并且值相等。 D、a和b都是整数类型变量并且值相等。 17.以下代码段将在内存中创建()个对象。 Strings1="bc";Strings2="bc"; A、0B、1C、2D、3 18.有以下程序片段,下列哪个选项不能插入到行1。 () 1. 2.publicclassInteresting{ 3.//dosth 4.} A、importjava.awt.*;B、packagemypackage; C、classOtherClass{}D、publicclassMyClass{} 19.要使类中的某个成员变量只能被同一个包中的类访问到,该 用什么修饰符修饰? () A、protectedB、publicC、privateD、应不加修饰符 12.以下哪个修饰符访问权限最大? () A、protectedB、publicC、privateD、default(缺省) 14.关于以下application的说明,正确的是()。 1.classStaticStuff 2.{ 3.staticintx; 4.static{x+=5;} 5.publicstaticvoidmain(Stringargs[]) 6.{ 7.System.out.println(“x=”+x); 8.} 9.static{x/=5;} 10.} A、4行与9行不能通过编译,因为缺少方法名和返回类型 B、9行不能通过编译,因为只能有一个静态初始化器 C、编译通过,执行结果为: x=1 D、能通过编译,但程序运行结果不可预知,因为x没有初始化 第四章继承与多态 1.在Java中,所有类的根类是()。 A.java.lang.ObjectB.java.lang.Class C.java.applet.AppletD.java.awt.Frame 2.若特快订单是一种订单,则特快订单类和订单类的关系是()。 A、使用关系 B、继承关系 C、包含关系 D、无关系 3.下面是一个源程序中定义的两个类A和B,将程序补充完整。 publicclassA_________B { publicstaticvoidmain(String[]x) {Aa=newA(); a.myfunc2();} publicvoidmyfunc1() {System.out.println(“myfunc1”);} publicvoidmyfunc2() {this.myfunc1(); ___________.myfunc2();//调用父类的方法 } } ____________classB {abstractpublicvoidmyfunc1(); publicvoidmyfunc2() {System.out.println(“myfunc2”);} } 4、子类必须通过___(10)___关键字调用父类有参数的构造函数。 5、在Java中,一个类可同时定义许多同名的方法,这些方法的形式参数个数、类型或顺序各不相同,传回的值也可以不相同。 这种面向对象程序的特性称为()。 A、隐藏B、覆盖C、重载D、Java不支持此特性 6、在Java中,子类可定义与父类方法同名的方法,这些方法的形式参数相同,传回值类型也相同。 这种面向对象程序的特性称为()。 A、隐藏B、覆盖C、重载D、Java不支持此特性 6、类Test1定义如下: 1.publicclassTest1{ 2.publicfloataMethod(floata,floatb){} 3. 4.} 将以下哪种方法插入行3是不合法的。 () A、publicfloataMethod(floata,floatb,floatc){} B、publicfloataMethod(floatc,floatd){} C、publicintaMethod(inta,intb){} D、privatefloataMethod(inta,intb,intc){} 7、写出以下程序的输出结果。 classA{ publicA(){ System.out.print(“A”); } } publicclassBextendsA{ publicB(){ System.out.print(“B”); } publicstaticvoidmain(String[]args){ newB(); } } 8.方法publicvoidMethodOverload(inti,doubled){}的重载方法是: () A.privateintMethodOverload1(inti,intj){returni;} B.protectedvoidMethodOverload(inti,doubled){} C.publicdoubleMethodOverload(doubled){returnd;} D.publicintMethodOverload(inti,doubled){returni;} 9.下列程序中定义了两个类,请将程序补充完整。 publicclassFather{ intnumber; publicFather(intnumber){ ___________________\\给Father的实例变量number赋值 } } classChildextendsFather{ publicChild(intn){ __________________\\调用父类的构造方法构造Child对象 } } 10.覆盖与重载的关系是( ) A、覆盖只有发生在父类与子类之间,而重载可以发生在同一个类中 B、覆盖方法可以不同名,而重载方法必须同名 C、final修饰的方法可以被覆盖,但不能被重载 D、覆盖与重载是同一回事 第五章接口与内部类 1、在Java程序中,通过类的定义只能实现继承,但通过接口的定义可以实现继承。 2、下列哪个声明是正确的? A.abstractfinalclassHI{···} B.abstractprivatemove(){···} C.protectedprivatenumber; D.publicabstractclassCar{···} 3、abstract修饰方法,则该方法称为____,不允许其子类________。 abstract修饰类,则该类称为____,不能_________。 4、若在某一个类定义中定义有如下的方法: finalvoidaFinalFunction();则该方法属于()。 A、本地方法B、解态方法C、最终方法D、抽象方法 5、以下哪个接口的定义是正确的? (
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- java 程序设计 期末 复习 题库