Java面向对象知识测试B卷.doc_第1页
Java面向对象知识测试B卷.doc_第2页
Java面向对象知识测试B卷.doc_第3页
Java面向对象知识测试B卷.doc_第4页
Java面向对象知识测试B卷.doc_第5页
已阅读5页,还剩11页未读 继续免费阅读

下载本文档

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

文档简介

面向对象部分测试题考试宣言:同学们, 考试考多少分不是我们的目的! 排在班级多少的名次也不是我们的初衷!我们考试的目的是要通过考试中的题目,检查大家在这段时间的学习中,是否已经把需要掌握的知识掌握住了,如果哪道题目你不会做,又或者做错了, 那么不用怕, 考完试后, 导师讲解的时候你要注意听! 那时候学会了, 记住了, 也一样不影响你高薪就业!本套题共40道不定项选择题,其中单选30道,多选10道。单选2分/题,多选4分/题。多选题不全对半分,全对满分。1. 下列说法哪个正确?(ABC)A. 一个程序可以包含多个源文件B. 一个源文件中只能有一个公共类C. 一个源文件中可以有多个类D. 一个源文件只能供一个程序使用2. 以下关于Object类说法错误的是(B )。A.一切类都直接或间接继承自Object类B.接口也继承Object类 C.Object类中定义了toString()方法D.Object类在java.lang包中3. 在Java中,多态的实现不仅能减少编码的工作量,还能大大提高程序的可维护性及可扩展性,下面哪一个选项不属于多态的条件(B )。A.子类重写父类的方法B.子类重载同一个方法C.要有继承或实现D.父类引用指向子类对象4. 编译运行如下Java代码,输出结果是( D )。class Base public void method()System.out.print (Base method);class Child extends Basepublic void methodB()System.out.print (Child methodB);class Sample public static void main(String args) Base base = new Child();base.methodB(); A.Base methodB.Child methodBC.Base method Child MethodBD.编译错误5. 下面说法正确的是( ABCD )。A. final 可修饰类、属性(变量)、方法 B. abstract可修饰类、方法C. 抽象方法只有方法声明,没有方法体 D. 关键字final和abstract不能同时使用6. 在Java接口中,下列选项中属于有效的方法声明是(A )。A.public void aMethod();B.final void aMethod();C.void aMethod() D.private void aMethod(); 7. 下面说法中错误的是(D)A. 静态代码块类一加载只执行一次 , 以后再创建对象的时候不执行B. 局部代码块的作用是为了限制变量的生命周期C.构造代码块在每创建一次对象就执行一次D.以上都不对8. 下面哪些关键字能用来控制对类成员的访问(AC )?A. public B. protected C. private D. default9. 给定如下Java代码 , 以下( AB )方法可以加入Child类中。 public class Parent int change()/此处省略N行代码 Class Child extends Parent /(此处可以放入下面哪个选项) A.public int change() B.int show(int i) C.private int change() D.abstract int change() 10. 在Java中,如果父类中的某些方法不包含任何逻辑,并且需要有子类重写,应该使用( C )关键字来声明父类的这些方法。A.finalB.staticC.abstractD.void 11. 下面关于变量及其范围的陈述哪些是对的? ( ACD)?A. 实例变量(区别于类变量,属于对象的变量)是类的成员变量。B. 实例变量用关键字static声明。C. 在方法中定义的局部变量在该方法被执行时创建D. 局部变量在使用前必须被初始化。12. 给定两个java程序,如下: public interface Face int counter = 40; public class Test implements Face private static int counter; public static void main(Stringargs) System.out.println(+counter); Test.java 的编译运行结果是( D)。 A.40 B.41 C.0 D.1 13. 关于abstract不能和哪些关键字共用正确的是(ABC)A.abstract不可以和private共用 B.abstract不可以和static共用C.abstract不可以和final共用 D.abstract不可以和public共用14. Java中,如果类C是类B的子类,类B是类A的子类,那么下面描述正确的是(A )。A.C可以继承B中的公有成员,同样也可以继承A中的公有成员B.C只继承了B中的成员C.C只继承了A中的成员D.C不能继承A或B中的成员15. 给定java程序,如下:publicclassTestprivatestaticfinalintcounter=10;publicstaticvoidmain(Stringargs)System.out.println(+counter);编译运行Test.java,结果是(C)A.10B.11C.编译错误D.运行时出现异常16. 给定一个Java程序代码,如下:(B)publicclassTestintcount=9;publicvoidcount1()intcount=10;System.out.println(count1=+count);publicvoidcount2()System.out.println(count2=+count);publicstaticvoidmain(Stringargs)Testt=newTest();t.count1();t.count2();编译运行后,输出结果是A.count1=9count2=9B.count1=10count2=9C.count1=10count2=10D.count1=9count2=1017. 按照课堂要求在类中定义构造方法和set方法,关于这两个方法描述错误的是( D )A.构造方法是用来创建对象或者初始化成员数据的B.set方法是为对象中成员变量赋值的C.带参构造在创建对象的时候也可以为成员变量赋值D.类中的带参构造方法与set方法功能是完全重复的,可以只选其一18. 程序Test.java编译运行后输出的结果是( A )。public class Test String s1=java; public static void main(String args) int z=2; Test t=new Test(); System.out.println(t.s1+z); A. java2 B. 2 C. 没有输出结果 D. java19. 用于定义类成员的访问控制权的一组关键字是( D )。 A. class, float, double, public B. float, boolean, int, long C. char, extends, float, double D. public, private, protected 20. 给定java代码,如下:编译运行,结果是 (A)publicstaticvoidmain(Stringargs)Strings; System.out.println(“s=”+s); A.编译错误B.编译通过,但出现运行时错误C.正常运行,输出s=nullD.正常运行,输出s=21. 关于类和对象的叙述正确的是:(A ) AJava的类分为两大部分:系统定义的类和用户自定义的类 B类的静态属性和全局变量(成员变量)的概念完全一样,只是表达形式不同 C编写一个类时,该类成员至少要有一个成员变量和一个成员方法 D类是对象的实例化22. 给出下面的不完整的类代码 class Person String name, department; int age; public Person(String n) name = n; public Person(String n, int a) name = n; age = a; public Person(String n, String d, int a) / 完成Person(String n, int a)的逻辑 department = d; 下面的哪些表达式可以加到构造方法中的注释处? ( C )A. Person(n,a);B. this(Person(n,a);C. this(n,a);D. this(name,age); 23. 关于对象成员占用内存的说法哪个正确?(B)A同一个类的对象共用同一段内存B、同一个类的对象使用不同的内存段,但静态成员共享相同的内存空间C对象的方法不占用内存D以上都不对24. 给定Java代码如下所示,则编译运行后,输出结果是(C )。class Parent Int money= 5000; public void count() System.out.println(10%3); public class Child extends Parent Int money= 10000; public void count() System.out.println(10/3); public static void main(String args) Parent p = new Child();p.count(); A.1B.1.0C.3D.3.333333333333333525. 下面关于外部类和内部类成员的相互访问的规则中,正确的选项是( AD )。A. 内部类可以直接访问外部类的成员B. 外部类可以直接访问内部类的成员C. 外部类不能访问内部类的成员D. 外部类可通过创建内部类的实例来访问内部类的成员26. 查看下面代码:classApublicinti=10; classBextendsApublicinti=20; publicclassTestpublicstaticvoidmain(Stringargs) Bb=newB(); Aa=b; System.out.println(b.i); System.out.println(a.i); 输出为多少 ( C) A.10 10 B.10 20 C.20 10 D.20 2027. 在Java接口中定义常量,下面语法正确的是( ABC)。A.static final int MALE = 1;B.final int MALE = 1;C.int MALE = 1;D.private int MALE = 1;28. 在Java语言中,下列关于类的继承的描述,正确的是( B)。?A.一个类可以继承多个父类B.一个类可以具有多个子类C.子类可以使用父类的所有方法D.子类一定比父类有更多的成员方法29. 给定如下一个Java源文件Child.java,编译并运行Child.java,以下结果正确的是( B)。?class Parent1 Parent1(String s) System.out.println(s); class Parent2 extends Parent1 Parent2() /super(); System.out.println(parent2); public class Child extends Parent2 public static void main(String args) Child child = new Child(); A.编译错误:没有找到构造器Child()B.编译错误:没有找到构造器Parent1()C.正确运行,没有输出值D.正确运行,输出结果为:parent230. 下列说法哪个正确?C A不需要定义类,就能创建对象B对象中必须有属性和方法C属性可以是简单变量,也可以是一个对象D、属性必须是简单变量31. 给定java代码,如下:publicclassTeststaticinti=0;publicintaMethod()i+;returni;publicstaticvoidmain(Stringargs)Testtest=newTest();test.aMethod(); System.out.println(test.aMethod();编译运行后,输出结果是(C)。A.0B.1C.2D.332. 下面关于final说法错误的是 (A )?A.final修饰的类不可以继承其他类B.内部类在访问局部变量的时候,局部变量需要使用final修饰C.被final修饰的引用类型变量内部的内容是可以发生变化的D.final修饰的变量称为常量,这些变量只能赋值一次。33. 给出下面的代码 (D) class Person String name,department; public void printValue() System.out.println(name is +name); System.out.println(department is +department); public class Teacher extends Person int salary; public void printValue() / 完成父类代码中printValue()相同的工作 System.out.println(salary is +salary); 下面的哪些表达式可以加入printValue()方法的注释部分? A. printValue();B. this.printValue();C. person.printValue();D. super.printValue();34. 下面关于匿名对象说法错误的是( B )?A.匿名对象就是没有名字的对象,创建出来该对象后没有赋值给一个引用B.匿名对象调用完方法后还可以继续调用成员变量C.可作为实际参数进行传递D.可以以下面格式使用匿名对象:new 类名().方法名(参数列表);35. 在java中,以下程序的输出结果是( C )classPointintx;booleany;voidoutput()System.out.println(x);System.out.println(y);publicstaticvoidmain(Stringargs)Pointpt=newPoint();pt.output();A.运行错误B.0tureC. 0 falseD.0036. 下面关于 this和super描述正确的是 (C)?A、都可以用在main()方法中B、都是指一个对象的内存地址C、不能用在main()方法中D、意义相同37. 给定如下Java程序代码,在_横线处加入(A )语句,可以使这段代码编译通过。interface Parent public int count(int i);public class Test implements Parent public int count(int i) return

温馨提示

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

最新文档

评论

0/150

提交评论