javaoop复习题
更新时间:2024-01-16 19:03:01 阅读量: 教育文库 文档下载
笔试题
1.给定如下java代码,下列()方法可以加入到Smaple类中,并且能够编译正确.(选两项) public class Sample{ }
A.private int getSomething(int i , String s); B.public void getSomething(int i);
C.private int getSomething(byte b){return b;} D.public double getSomething(){return 2;}
2.给定如下java代码,编译运行后,结果是(b) public class Sample{ private int x;
public Sample(){ x=1;
}
public void Sample(double f){ this.x=(int)f; }
public int getX(){
return x; }
public static void main(String [] args){ Sample s = new Sample(5.2); }
System.out.println(s.getX()); public int getSomething(int d){ return d; }
}
A. 发生编译错误,编译器提示:出现重复方法Sample
B. 发生编译错误,编译器提示:未定义构造方法Sample(double) C. 正常运行,输出5.2 D. 正常运行,输出5
3.给定如下java代码,编译运行后,将会输出()结果. public class Sample{
public double result(double d1,double d2){
return d1 public double result(int d1,double d2){ return d1>d2?d1:d2; } public int result(int d1,int d2){ return d1-d2; } private int result(int i){ return I; } public static void main(String args[]){ } Sample s = new Sample(); System.out.print(s.result(2,3.0)+”,”); System.out.print(s.result(4.0,4.5)+”,”); System.out.print(s.result(10,9)); } A.3.0,4.0,1 B.2,4.0,1 C.3.0,4.5,-1 D.-1,4.0,1 4.构成方法重载的要素包括().(选三项) A.方法名称相同 B.返回类型不同 C.参数列表不同 D.在同一个类中 5.在如下所示的Sample类中,共有()个构造方法 public class Sample{ private int x; public Sample(){ } x=1; public void Sample(double f){ this.x=(int)f; } public Sample(){ x=2; } public Sample(String s){ } } A.4 B.3 C.2 D.1 6.给出下列java代码,请指出代码中存在的错误().(选两项) class Teacher1{ public Techer1(){ } } class Teacher2{ } public class TeacherTest{ public static void main(String [] args){ } } A. Teacher1 类中的构造方法名称与类名不相同 B. Teacher2 类中为定义Teacher2(String name)构造方法 C. 测试类中的代码:Teacher1 t1 = new Teacher1(); 不能编译通过 D. 没有错误 7.给定如下java代码,下列()方法可以加入到Child类中,并能够保证编译正确. class Base{ } public void method(){} Teacher1 t1 = new Teacher1(); Teacher2 t2 = new Teacher2(“Mr Lee”); public void Teacher2(String name){ } class Child extends Base{ } A. public void method(String s){} B. public int method(){return 1;} C. private void method(){} 8.编译运行如下java 代码,以下说法正确的是() class Base{ private String name; public Base(){ } } } class Child extends Base{ name = “Base”; public void method(){ System.out.println(name); } public Child(){ } super(“Child”); name=”CC”; public class Sample{ public static void main(String [] args){ } } A. 发生编译错误 B. 正常运行,输出:Base C. 正常运行,输出:Child D. 正常运行,输出:CC 9.在子类的构造方法中,使用()关键字调用父类的构造方法 A.base B.super C.this D.extends 10.构成方法重写的要素不包括().(选两项) A.方法名称相同 B.返回类型相同 C.参数列表相同 D.在同一个类中 E.存在子类和父类中 F.返回类型不同 11.编译运行下列java代码,输出结果是() public class Sample{ } class Base extends Object{ private String name; public Base(){ name=”Base constructor”; } public Base(String pName){ name = pName; public static void main(String [] args){ Child c = new Child(); } c.method(); Chlild c = new Child(); c.method(); } public void method(){ System.out.println(name); } } calss Child extends Base{ public void method(){ } } System.out.println(“Child method”); public Child(){ super(“Child constructor”); } A. Base constructor B. Child constructor C. Child method 12.下面的程序中定义了一个java接口,其中包含()处错误 public interface Utility{ private int MAX_SIZE=20; int MIN_SIZE=10; void Use(){ System.out.println(“using it”); } private int getSize(); void setSize(int i); } A.1 B.2 C.3 D.4 13.给定如下java代码,可以填入下划线处的语句是().(选三项) public interface Utility{} class FourWheeler inplements Utility{} class Car extends FourWheeler{} class Bus extends FoourWheeler{} public class Test{ } public static void main(String [] args){ } _________ A. Utility car = new Car(); B. C. D. E. FourWheeler bus = new Bus(); Utility ut = new Utility(); Bus bus = new FourWheeler(); FourWheeler fw = new FourWheeler(); 14.以下()修饰符用于声明一个类变量,且该变量的值在运行期间恒定不变. A.static B.final C.static final D.final static 15.给定下列java 代码,可以填入下划线处的语句是() public interface Constants{ int MAX=50; int MIN = 1; } pulbic class Test{ public static void main(String []args){ } } A. Constants con = new Constants(); B. Constants.MAX=100; C. int i = Constants.MAX-Constants.MIN; D. Constants.MIN>0 ; 16.公有成员变量MAX是一个int型值,变量的值保持参数值100,在类Constants中,可以使用以下()声明语句来定义这个变量. A.public int MAX=100 ; B.final int MAX=100 ; C.public static int MAX=100 ; D.public final int MAX = 100; 17.能单独和finally语句一起使用的块是() a.try b.catch c.throw d.throws 18.下面的程序执行结果是() public class Test{ public static void main(String [] args){ new Test().test(); _________ } publid void test(){ try{ System.out.print(“try”); }catch(ArrayIndexOfBoundsException e){ System.out.print(“catch1”); }catch(Exception e){ System.out.print(“catch2”); }finally{ } } } A. try finally B. try catch1 finally C. try catch2 finally D. finally 19.下面代码正确的是() A. try{ System.out.print(“try”); }catch(Exception e){ System.out.print(“catch”); } B. try{ } System.out.print(“try”); System.out.println(“finally”); C. try{ System.out.print(“try”); }finally(Exception e){ System.out.print(“finally”); } D try{ System.out.print(“try”); } finally{ } System.out.print(“finally”); 20.下面的程序的执行结果是() public class Test{ public static void foo(){ try{ String s = null; String s2 = s.toLowerCase(); }catch(NulllPointerException e){ System.out.print(“2”); }finally{ } System.out.print(“4”); System.out.print(“3”); } } public static void main(String [] args){ foo(); } a.2 b.34 c.23 d.234 21.下列类中在多重catch中同时使用时,()异常类应该最后列出 a.ArithmeticException b.NumberFormatException c.Exception d.ArrayIndexOutOfBoundsException 22.下面关于继承的叙述哪些是正确的() a.在java中只允许单一继承 b.在java中一个类只能实现一个接口 c.在java中一个类不能同时继承一个类和实现一个接口 d.java的单一继承使代码更可靠 23.指出下面关于垃圾收集的哪些叙述哪些是正确的() a.程序开发者必须自己创建一个线程进行内存释放的工作 b.垃圾收集将检查并释放不再使用的内存 c.垃圾收集允许程序开发者明确指定并立即释放该内存 d.垃圾收集能够在期望的时间释放被java对象使用的内存 24.下面关于变量及其范围的叙述哪些是对的() a.实例变量是类的成员变量 b.实例变量用关键字static声明 c.在方法中定义的局部变量在该方法被执行时创建 d.局部变量必须在使用前初始化 25.根据下面给出的代码,确定执行结果() public class Person{ static int arr[]=new int [10]; public static void main(String []args){ System.out.pirnt(arr[1]); } } a. 编译错误 b. 编译正确但执行时出错 c. 输出0 d. 输出null 26.一个类中定义的成员变量只能被同一个包中的类访问,下面哪些修饰符可以获得需要的访问控制() a.private b.没有修饰符 c.public d.protected 27.如果类的设计要求它的某个成员变量不能被外部的类直接访问,应使用下面的哪些修饰符满足设计的要求() a.private b.没有修饰符 c.public d.protected 28.下面代码的下划线处应放哪个语句,能正确编译() 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){ _________________ } department = d; } a. Person(n,a); b. this.(Person(n,a)); c. this(n,a); d. this(name,age); 29.阅读下面代码: public class Parent{ public int addValue(int a,int b){ int s; } s = a+b; return s; } class Child extends Parent{ } 下面的哪些代码可以放到Child类中() a. int addValue(int a,int b){//语句} b. public void addValue(){//语句} c. public int addValue(int a){//语句} d. public int addValue(int a,int b)throws Exception{//语句} 30.给出下面代码: class Person{ } public class Teacher extends Person{ int s; public void printValue(){ ______________ System.out.print(“s is ”+s); } } 下面哪些表达式可以加入下划线处() a. printValue(); b. this.printValue(); c. person.printValue(); d. super.printValue(); 31.判断下列程序的输出结果() public class Q1{ public static void main(String [] args){ try{throw new MyException} catch(Exception e){ System.out.print(“It?s caught”); }finally{ } } } System.out.println(“It?s finally caught”); String name,department; public void printValue(){ } System.out.print(“name is”+name); System.out.print(“department is”+department); class MyException extends Exception{} a. b. c. d. It?s caught It?s finally caught It?s caught It?s finally caught 无输出 32.下面程序在oneMethod()方法运行时,最有可能会输出什么() public calss Test{ try{ oneMethod(); System.out.println(“情况1”); }catch(ArrayIndexOutOfBoundsException){ System.out.print(“情况2”); }catch(Exception e){ System.out.print(“情况3”); }finally{ } System.out.print(“finally”); } a. 情况1 finally b. 情况2 finally c. 情况3 d. 情况1 情况3 finally 33.下面4段代码中哪个java源文件代码片断是对的(ACD) a.package testpackage; public class Test{//语句} b. import java.io.*; package testpackage; public class Test{//语句} c. import java.io.*; class Person{//语句} public class Test{//语句} d.import java.io.*; import java.awt.*; public class Test{//语句} 34.补充完成下列不完整的方法 __________(try) {success = connect(); if(success==-1){ throw new Exception(); } } 35. &和&&的区别。 &是位运算符,表示按位与运算,&&是逻辑运算符,表示逻辑与(and)。 36. abstract class和interface有什么区别? 声明方法的存在而不去实现它的类被叫做抽象类(abstract class),它用于要创建一个体现某些基本行为的类,并为该类声明方法,但不能在该类中实现该类的情况。不能创建abstract 类的实例。然而可以创建一个变量,其类型是一个抽象类,并让它指向具体子类的一个实例。不能有抽象构造函数或抽象静态方法。Abstract 类的子类为它们父类中的所有抽象方法提供实现,否则它们也是抽象类为。取而代之,在子类中实现该方法。知道其行为的其它类可以在类中实现这些方法。 接口(interface)是抽象类的变体。在接口中,所有方法都是抽象的。多继承性可通过实现这样的接口而获得。接口中的所有方法都是抽象的,没有一个 有程序体。接口只可以定义static final成员变量。接口的实现与子类相似,除了该实现类不能从接口定义中继承行为。当类实现特殊接口时,它定义(即将程序体给予)所有这种接口的方法。 然后,它可以在实现了该接口的类的任何对象上调用接口的方法。由于有抽象类,它允许使用接口名作为引用变量的类型。通常的动态联编将生效。引用可以转换到 接口类型或从接口类型转换,instanceof 运算符可以用来决定某对象的类是否实现了接口。 37. 接口是否可继承接口? 抽象类是否可实现(implements)接口? 抽象类是否可继承实体类(concrete class)? 接口可以继承接口。抽象类可以实现(implements)接口,抽象类是否可继承实体类,但前提是实体类必须有明确的构造函数。 38. List, Set, Map是否继承自Collection接口? List,Set是,Map不是 39. String s = new String(\创建了几个String Object? 两个对象,一个是“xyx”,一个是指向“xyx”的引用对象s。 40. public class Something { void doSomething () { private String s = \ int l = s.length(); } } 说出代码中的错误: 局部变量前不能放置任何访问修饰符 (private,public,和protected)。final可以用来修饰局部变量 (final如同abstract和strictfp,都是非访问修饰符,strictfp只能修饰class和method而非variable)。 41. 代码改错: Something类的文件名叫OtherThing.java. class Something { private static void main(String[] something_to_do) { System.out.println(\ } } 正确 42. try {}里有一个return语句,那么紧跟在这个try后的finally {}里的code会不会被执行,什么时候被执行,在return前还是后? 会执行,在return前执行。 43. 在Java中,关于private修饰符的说法中正确的是 a、其修饰的变量或方法只允许自身访问 b、其修饰的变量或方法允许任意类访问 c、权限高于public d、用private修饰的变量对其子类是可见的。 44. 以下说法中错误的是( ) a Exception是异常层次结构的根类 b 不能加载所需类时将引发ClassNotFoundException c ArithmeticException表示发生了算术错误 d 在方法体内向外抛出异常用throws来完成 45. 在java中,关于等值比较的说法中正确的是() a.任何情形下“==”比较的都是内存地址 b.equals可用于比较基本数据类型 c.equals总是比较两个对象的内容 d.以上说法都不对 46. java中的接口就是定义了一种约定,下列接口定义正确的是( )。 a) interface IPrinter { public void print(); } b) interface IPrinter { string void print{ }; } c) interface IPrinter { private string color } d) interface IPrinter { void print() {System.out.println(“打印机”);} } 47. 以下定义的类中( )不是泛型集合类。 a Student 48. 下面关于设计模式的说法中正确的是(ABC) a) 设计模式来源于生活,属于方法论范畴 b) 主要源于成功经验总结并解决实际问题出现 c) 不同的设计模式解决不同的问题 d)使用设计模式可以大大简化代码的编写 49.根据下列语句判断哪些表达式返回为true.() String s = “hello”; String t = “hello”; char [] c = {?h?,?e?,?l?,?l?,?o?} a.s.equals(t) b.t.equals(c) c.s==t d.t.equals(new String (“hello”)) e.t==c 50.根据下面的代码片段判断哪些叙述为真.() public void create(){ Vector myVect; myVect = new Vector(); } A. 第二行的声明不会为变量myVect分配内存空间 B. 第二行的声明分配一个到Vector对象的引用的内存空间 C. 第二行语句创建一个Vector对象 D. 第三行语句创建一个Vector对象 E. 第三行语句为一个Vector类对象分配内存空间
正在阅读:
javaoop复习题01-16
七月琉璃雨11-10
会计常识一06-24
肾脏专科考题(附答案)06-12
初级检修工理论考试题05-22
GSM0710中文版03-10
如何发挥检察机关办公室的参谋助手作用06-03
EMBA校友:从通讯录到通缉录12-22
各省军区独立师历史沿革04-25
- exercise2
- 铅锌矿详查地质设计 - 图文
- 厨余垃圾、餐厨垃圾堆肥系统设计方案
- 陈明珠开题报告
- 化工原理精选例题
- 政府形象宣传册营销案例
- 小学一至三年级语文阅读专项练习题
- 2014.民诉 期末考试 复习题
- 巅峰智业 - 做好顶层设计对建设城市的重要意义
- (三起)冀教版三年级英语上册Unit4 Lesson24练习题及答案
- 2017年实心轮胎现状及发展趋势分析(目录)
- 基于GIS的农用地定级技术研究定稿
- 2017-2022年中国医疗保健市场调查与市场前景预测报告(目录) - 图文
- 作业
- OFDM技术仿真(MATLAB代码) - 图文
- Android工程师笔试题及答案
- 生命密码联合密码
- 空间地上权若干法律问题探究
- 江苏学业水平测试《机械基础》模拟试题
- 选课走班实施方案
- 复习题
- javaoop
- 弹塑性力学考题史上最全总结,没有之一 - 图文
- 关于加强煤矿地测防治水工作的管理办法
- 预防医学面试题目集中
- 论知识产权的观念-以一则案例讨论知识产权类型化及法律适用
- 2018南京二模试题附答案和答题纸
- 《天然药物化学》习题汇总(含全部答案版)
- 工业设计毕业设计论文
- 平安Java开发面试题
- 棉签擦拭取样方法验证方案
- 团队拓展训练方案(宣传)
- 田崎仁的职业价值观测评与解释
- 湖北省咸宁市嘉鱼县城北中学等三校2016届九年级化学下学期第二次月考试题
- 江阴市第一中学学生发展指导中心工作方案(初稿) - 图文
- 河南理工大学2012-2013学年第一学期 - 图文
- 进程管理习题及答案
- 公差与配合标准表
- 新课程背景下数学课堂教学的理性思考
- 河南工业大学C语言题库
- 姓名学三才数理吉凶配置表
- 我国一氯甲烷市场运行现状分析(中元咨询)