
《Java面向对象程序设计》考试卷及答案带注释.doc
7页第#页共3页一、单选题(每小题1分,共30分)1•在MyEclipse中,()视图可以将项目中包含的文件及层次结构展示出来CA) PackageB)DeclarationC)NavigatorD)Console2. 下列标识符中,正确的是()CA) classB)123_rrC)_leiD)test&123. 下列的()选项可以正确用以表示八进制值8Ox代表16进制,0代表8进制DA)0x8B)0x10D)0104. 以下哪个不是Java的原始数据类型()DA) intB)booleanC)floatD)Char引用数据类型5•下列有关Java布尔类型的描述中,正确的是()AA) —种基本的数据类型,它的类型名称为booleanB) 用int表示类型C) 其值可以赋给int类型的变量D) 有两个值,1代表真,0代表假6. 在Java中,不属于整数类型变量的是()AA) double浮点型B)longC)intD)byte7. 以下do-while语句构成的循环执行次数是()Bintk=0;do{++k;}while(k<1);A) 一次也不执行B)执行1次C)无限次D)有语法错误,不能执行8. 表达式(1/0<1)&&(12==0)的值为()。
逻辑运算结果只有true和false两种BA)trueB)falseC)0D)运行时抛出异常9.以下()表达式不可以作为循环条件AA)i=5B)i<3C)count==iD)bEqual=str.equals("q")10.下列数组初始化正确的是()DA) intscore[5]={90,12,34,77,56};B) int[5]score=newint[];C) int[]score=newint[5]{90,12,34,77,56};D) intscore[]=newint[]{90,12,34,77,56};11. 若有定义:byte[]x={11,22,33,-66};其中0WkW3,则对x数组元素错误的引用是()CA)x[5-3]B)x[k]C)x[k+5]D)x[0]12. 以下代码的输出结果是()Dpublicstaticvoidmain(String[]args){for(inti=1;i<=10;i++){if(i%2==0||i%5==0){continue;}System.out.print(i+"\t");}}A)1B)134C)13579D)137913. 下列()选项的java源文件代码片段是不正确的。
BA)packagetestpackage;B)importjava.io.*;publicclassTest{}packagetestpackage;publicclassTest{}C)importjava.io.*;D)importjava.io.*;classPerson{}importjava.awt.*;publicclassTest{}publicclassTest{}14. 为了在当前程序中使用包ch4中的类,可以使用的语句是()AA)importch4.*;B)packagech4.*;C)importch4;D)packagech4;15. 下面说法中不正确的是:()CA)类是对象的抽象,对象是类的实例B)类是组成java程序的最小的单位C)java语言支持多继承单D)java一个程序中只能有一个public类16. 对于下面的不完整的类代码,下面表达式中,()可以加到构造方法中的横线处Cclassperson{Stringname,department;publicvoidperson(Stringn){name=n;}publicperson(Stringn,Stringd){department=d;}}personp=newperson(“jim”);personp=newperson(“jim”,”jsjx”);A)person(n)B)this(person(n))C)this(n)D)this(n,a);17. 构造方法何时被调用?()BA)类定义时B)创建对象时C)调用对象方法时D)使用对象的变量时18. 定义一个类名为“MyClass.java”的类,并且该类可被一个工程中的所有类访问,那么该类的正确声明应为()°C(A) privateclassMyClassextendsObject(B) classMyClassextendsObject(C) publicclassMyClass(D) privateclassMyClassextendsObject19. 方法重载是指()A(A) 两个或两个以上的方法取相同的方法名,但形参的个数或类型不同(B) 两个以上的方法取相同的名字和具有相同的参数个数,但形参的类型可以不同(C) 两个以上的方法名字不同,但形参的个数或类型相同(D) 两个以上的方法取相同的方法名,并且方法的返回类型相同20. 如果编写一个main()方法调用HelloAccp类的show()方法,其运行结果是()。
ApublicclassHelloAccp{inta=100,b=50;publicvoidavg(){floatc=(a+b)/2;}publicvoidshow(){System.out.println("平均值为:“+c);}}A) 存在错误,提示:无法解析cB) 平均值为:75C) 平均值为:75.0D) 存在错误,提示:无法将数据类型int转换为float21.对于下列代码:1) classPerson{2) publicvoidprintValue(inti,intj){//...}3) publicvoidprintValue(inti){//...}4) }5) publicclassTeacherextendsPerson{6) publicvoidprintValue(){//...}7) publicvoidprintValue(inti){//...}8) publicstaticvoidmain(Stringargs[]){9) Persont=newTeacher();10) t.printValue(10);11) }12) }第10行语句将调用哪行语句?()DA)line2B)line3C)line6D)line722.阅读下面代码:classparent{protectedintaddvalue(inta,intb){ints;}s=a+b;returns;}classchildextendsparent{}若要在child类中对addvalue方法进行重写,下面对于child类中的addvalue方法头的描述()是正确的。
DA)intaddvalue(inti,intj)C)voidaddvalue(doublei)23.下列哪个类声明是正确的()DB) voidaddvalue()D)publicintaddvalue(inta,intb)A)abstractfinalclassHl{•••}C) protectedprivatenumber;24. Java中所有类的父类是DA)FatherB)Lang25. 编译如下Java代码,输出结果是B) abstractprivatemove(){•••}D) publicabstractclassCar{•••}C)Exception()BD)ObjectclassBase{publicvoidmethod(){System.out.print("Basemethod");}}classChildextendsBase{publicvoidmethod(){System.out.print("Childmethod");}classSample{publicstaticvoidmain(String[]args){Basebase=newChild();base.method();}}A)BasemethodB)ChildmethodC) BasemethodChildmethodD)编译错误26. 下列Java代码中Test类中的四个输出语句的输出结果依次是()。
CclassPerson{Stringname="person";publicvoidshout(){System.out.print(name);}}classStudentextendsPerson{Stringname="student";Stringschool="school";}classTest{publicstaticvoidmain(String[]args){Personp=newStudent();System.out.print(pinstanceofStudent);System.out.print(pinstanceofPerson);System.out.print(pinstanceofObject);System.out.print(pinstanceofSystem);}}A)true、false、true、falseB)false、true、false、trueC)true、true、true、编译错误D)true、true、false、编译错误27.以下关于接口的说法中,正确的是()DA) 接口中全部方法都是抽象方法,方法可以是任意访问权限B) 接口中属性都是使用publicstaticfinal修饰,没有显式赋值将使用默认值C) 接口可以有构造方法D) 接口表示一种约定,接口表示一种能力,接口体现了约定和实现相分离的原则28. 给定如下Java代码,可以填入横线处的语句是()。
CpublicinterfaceConstants{intMAX=50;intMIN=1;}publicclassTest{publicstaticvoidmain(String[]args){}A)Constantscon=newConstants();B)Constants.MAX=100;C)inti=Constants.MAX-Constants.MIN;D)Constants.MIN>0;29. 请问所有的异常类皆继承哪一个类?()CA)java.io.ExceptionB)java.lang.ThrowableC)java.lang.ExceptionD)java.lang.Error30. 对于catch子句的排列,下列哪种是正确的()BA)父类在先,子类在后B)子类在先,父类在后C) 有继承关系的异常不能在同一个try程序段内D) 先有子类,其他如何排列都无关二、填空题(每空2分,共20分)1. Java有JavaSE、JavaEE和JavaME三个版本2. Java源程序文件编译后产生的文件称为__字节码文件,其扩展名为___.class3. 面向对象编程的三大特性是__封装、继承和多态。
4. ____抽象(或abstract)方法是一种仅有方法头,没有具体方法体和操作实现的方法,该方法必须在抽象类之中定义final方法是不能被当前。












