面向对象考试_第1页
面向对象考试_第2页
面向对象考试_第3页
面向对象考试_第4页
面向对象考试_第5页
已阅读5页,还剩12页未读 继续免费阅读

下载本文档

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

文档简介

1、1.下面关于Java语言中方法的说法错误的是:方法调用时参数类型必须符合方法的定义参数传递是值传递的方式如果方法没有返回值必须声明返回为void如果方法定义为返回void,则方法中不能出现return语句2 .指出下列程序运行的结果public class Example (String sti-new Strmg(ntarenaM);cliaich=,a,;b,;c,);public static void niain(Strmg args)(Example ex=new Example。; ex.change(ex.str.ex.ch);System.outprint(exstr+ and

2、 );System.out.prmt(ex.ch);public void chaiige(Stiiiig str.char ch) sti=”test ok”; ch0=g;tarena aiid abctarena aiid gbctest ok and abctest ok and gbc关于Java对象的删除,下列说法正确的是:必须由程序员完成对象的清除BJava把没有引用的对象作为垃圾收集起来并释放C.只有当程序中调用Systenigc()方法时才能进行垃圾收集(手动垃圾收集)DJava中的对象都很小,一般不进行删除操作卜冽代码编译或运行的结果是:public class Foo (

3、public String doit(iiit x, hit y) ( return a”;public String doit(iiit vals) (return ”b”;public static void main(StringO args) (Foo f=new Foo();System.out.println(f.doit(4, 5);代码 public Strmg doit(int vals) 行,编译出错代码System.out.println(f.doit(4, 5);行,抛出运行时异常输出:a输出:b5 .请看下列代码:class Inner private mt x;pu

4、blic void setX(iiit x) tliis.x = x;public int getX() ( return x;class Outer private Inner y;public void setY(Iiiner y) tliis.y = y;public Inner getYQ return y;public class Ganmia (public static void main(Striiig aigs) Outer o = new OuterQ;Inner i = new Iiiiier(); mt n =10;i.setX(n);o.setY(i);V插入代码Sy

5、stem, ou t.println(o. getY (). getX();)运行上述代码,要求输出“100”,那么插入代码处应填入的代码是:n= 100;i.setX( 100);o.getYQ.setX( 100);i = new Inner。; i.setX( 100); o.setY( i);6 .关于下列代码说法正确的是:public class Foo (public int add(int a, int b) ( return a + b;public static void mam(Stimg args) Foo fbo = null;System.out.prmtln(fbo

6、.add(10, 20);编译错误正常运行,但无结果输出运行输出:30运行时抛出 NullPoiiiterException 异常下列说法正确的有:class中的constructor不可省略constructor必须与class同名,但方法不能与class同名C .constructor在一个对象被实例化时执行*个 class 只能定义一个 constructor关于Java中继承的特点,下.列说法正确的是:使类的定义复杂化BJava只支持单继承,不可多继承,但可以通过实现接I I来达到多继承的目的子类继承父类的所有成员变量和方法,包括父类的构造方法不可以多层继承,即一个类不可以继承另一个类

7、的子类请看卜冽代码: class ClassA )class ClassB extends ClassA )class ClassC extends ClassA )public class Test(public static void main(String args) (ClassA pO = new ClassAQ;ClassB pl = new ClassB。;ClassC p2 = new ClassCQ;ClassA p3 = new ClassB。;ClassA p4 = new ClassCQ;V插入代码卜.列选项中放置在V插入代码处,使程序编译正确的是:pO = pl;pl

8、 =p2;p2 = p4; /把大类型转换成小类型需要显式转换p2 = (ClassC)pl;兄弟之间不能强制类型转换,编译错误请看下列代码,程序的输出结果是:class One public One() System. out.prmt( 1);class Two extends One (public TwoQ System.out.prmt(2);class Tluee extends Two (public Three。(System.out.prmt(3);public class Numbers (public static void mam(Strmg argv) new Tlu

9、eeQ;l TOC o 1-5 h z 312332111 .下列代码的运行结果是:public class Aiimial ( public String noise() retuni HpeepH;ipublic static void main(StringQ args) Aiimial anmial = new Dog();Cat cat = (Cat)aiiinial;System.out.prmtln(cat.noise();iclass Dog extends Anunal ( public String noise() return bark”;iclass Cat exten

10、ds Aiuinal public String noise() return nmeowH;ipeepbarkmeow抛出运行时异常卜列代码的运行结果是:class SmipleCalc ( public int value;public void calculateQ ( value += 7;ipublic class MultiCalc extends SmipleCalc ( public void calculateQ (value =3;public void calculate(int multiplier) (calculate();super.calculate();val

11、ue *= multiplier;public static void main(String args) (MultiCalc calculator = new MultiCalcQ;calculator.calculate(2);System.out.piiiitln(HValue is: + calculator.value);Value is: 8Value is: -8Value is: 12Value is: -12卜.列选项不属于属性的可见性有:公有的私有的私有保护的保护的在Java中,关于static关键字的说法错误的是:static可以修饰方法static可以修饰变量stat

12、ic可以修饰代码块static修饰的方法,在该方法内部可以直接访问非静态的成员变量卜.列类的定义,错误的是: TOC o 1-5 h z public class Test extends Objectfinal class Operators)class Poiiit)void class Point)在Java中,关于final关键字的说法正确的是:如果修饰局部变量,必须初始化如果修饰类,则该类只能被一个子类继承如果修饰方法,则该方法不能在子类中被覆盖如果修饰方法,则该方法所在的类不能被继承卜.列数组创建和初始化的方式不正确的是:public class Test02 (static fi

13、nal mt a = 100,200 );public class Test02 ( static filial iiit a;static (a=new int2;a0=100;al=200;public class Test02 ( filial int a;public Test02()( a=new mt2;a0=100; al=200;public class Test02 static filial int a; static void init() a = new iiit3;a0=100;al=200;关于抽象类的说法正确的是抽象类中一定包含抽象方法,否则是出现编译错误包含抽象

14、方法的类一定是抽象类抽象方法可以没有方法体,也可以有方法体D 抽象类的子类一定不是抽象类关于接I I的说法错误的是:接口是特殊的抽象类接口是抽象方法和常量值的定义的集合当一个非抽象类实现一个接I I时,需要实现接I I中的所有方法多个类可以实现一个接II, 一个类只能实现一个接II20 .请看下列代码:public class UserRequest (public void request(Ser4etAction action) (action.doSeivice();public static void main(String args) UserRequest user = new U

15、serRequestQ;user.request(new SendetAction() (public void doSendceQ (System, out. printing 处理请求”););如果上述代码采用回调模式编写,下列关于SeMetAction的定义正确的是:public static class SeivletAction (public void doSeivice();public final class ServletAction (public void doSeivice();public class SendetAction (public void doSeivi

16、ce();public interface SendetAction public void doService。;21. F列不属于Swmg提供的Listener的是:ActioiiListenerMouseListenerKevListenerD MemeryListener.请看下列代码:public class Line public static class Point class Triangle V插入代码在插入代码处,需要创建Point类的对象,下列选项正确的是:Pomt p = new PoiiitQ;Lme.Pomt p = new Line.PointQ; /创建一个变量

17、格式是类似这样的Lme line = new LmeQ ; Ime.Pomt p = new line.Poiiit();Lme.Poiiit p = new LmeQ.new Pouit();.请看下列代码: public abstract class A ( abstract void alQ;void a2Q (class B extends A ( void alQ (void a2Q (class C extends B ( void clQ (和Ax = newB(); C y = new C0; Az = new C();卜列选项中属于多态形式调用方法的是:x.a2Q; /父类类

18、型变量引用子类对象,调用重载的方法,调用重写的方法,调用子类里没有但父类里有的方法z.a2Q;z.clQ;y.clQ;.程序执行的结果是:public class Test(int x= 12;public void method(iiit x) x+= X;System.out.pimtlii(x);public static void main(String args) ( Test t = new Test();t.method(5);uu3 TOC o 1-5 h z 5101217.程序的执行结果是:public class Test (int x;public static voi

19、d mam(Stimg args) Test t = new Test();t.x=5;85chaiige(t);System.out.prmthi(t.x);)public static void chaiige(Test t) t.x=3;) TOC o 1-5 h z 53O4.关于下列代码说法正确的是:public class CreditCaid (private String cardlD:private Integer limit;public String ownerName;public void setCardlnfdrmation(Stimg cardlD, Stimg

20、owneiName,Integer limit) tlus.cardlD = cardlD;tlus.owneiName = ownerName;tlus.liniit = limit;类CieditCard是完全封装的属性ownerName打破了封装属性caidlD和limit打破了封装方法 setCaidlnfbnnation 打破 了封装27.关于下列代码说法正确的是:public class A ( public void doitQ public String doitQ return a”;public double x) ( return 1.0;无编译错误代码public St

21、img doit() 行,出现编译错误代码public double doit(mt x) 行,出现编译错误代码return 行处出现编译错误.关于下列代码说法正确的是:public class ItemTest (private int id;public ItemTest(iiit id) tliis.id = id;public void updateld(mt newld) (id = newld;public static void main(Striiig aigs) ItemTest fa = new ItemTest(42);fa.updateld(69);System, ou

22、 t.println(fa .id);编译错误运行时异常抛出运行后,fa对象属性id的值没有改变,应然是42运行后,fa对象属性id的值改变成新的值69.请看下列代码:public class Operator (public String fuidQ(return HjessicaH;public static void mam(Strmg args) V插入代码System.out.prmthi(op.find();如果运行上述代码,抛出NuUPomterException异常,那么v插入代码处应填入的代码是:Operatoi op=new Opeiatoi();Opera tor op;

23、Operatoi op=null;new Opeiator();.给出下面的代码段:public class Base(mt w, x, y, z;public Base(int a, int b)(x=a; y=b;public Base(int a, int b, hit c, int d)插入代码w=d;z=c;在插入代码处写下如下代码,正确的是:ABase(a, b);super(a, b):x=a, y=b;Dthis(a, b);31.在Java中,所有类的基类是:java.lang.Objectjava.lang.ClassC .j ava applet. Appletjava.

24、awt. Frame.下列代码运行的结果是: class Foo ( public int a;public Foo() ( a = 3;1public void addFiveQ a += 5;iclass Bar extends Foo ( public int a;public BarQ a = 8;public void addFiveQ tliis.a += 5;public class TestFoo public static void main(String args) (Foo fbo = newfoo.addFive();System.out.piiiitln(HValue

25、: n + fbo.a);Vahie: 3Value: 8Value: 13Value: 18.程序的执行结果是:public class Test (public static void mam(Strmg args)Cluld c = new ChildQ;)class Father(public Father。System, out. println(”父类无参构造函数, )public Fatlier(Stiiiig name)(System, out. println(”父类有参构造函数,)class Child extends Fatlier(public Cliild()this

26、(HddH);System, out. println(”子类无参构造函数”);)public Cluld(Strmg name)(super(MddM);System, out. printing子类有参构造函数,父类有参构造函数 子类有参构造函数 子类无参构造函数父类无参构造函数 子类有参构造函数 子类无参构造函数子类有参构造函数 子类无参构造函数 父类无参构造函数子类无参构造函数 子类有参构造函数 父类无参构造函数.下列代码的运行结果是:public class Aiimial ( public String noise() retuni HpeepH;public static voi

27、d mam(Stimg args) (Cat cat =null;Aiimial anmial = new Dog(); if (animal instanceof Cat) ( cat = (Cat) aiiiinal;System. out.pimthi(cat.noiseO);)else(System.out.piiiitlii(nanuual is not Cats instance”);class Dog extends Anunal (public String noise() return bark”;class Cat extends Aiuinal public String

28、 noise() retuni HmeowH;peepbarkmeowanmial is not Cats instance.请看下列代码:public class Blip protected mt blipvert(iiit x) return 0:class Veit extends Blip 插入代码在插入代码处填入选项中的代码,使Vert类没有编译错误的是:public mt blipvert(int x) return 0; 重写的方法权限必须大于原方法private mt bhpvert(int x) return 0;private mt blipvert(long x) re

29、tuin 0; protected long blipvert(int x) retuin 0; 重写是完全一样,返回值类型,方法名,参数列表36.卜.面关于import, class和package的声明顺序正确的是:package, import, classclass, import, packageimport, package, classpackage, class, import37 .请看下列代码:public class Foo static void alphaQ ( /* more code here */void betaQ ( /* more code here */卜列说法正确的是:

温馨提示

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

评论

0/150

提交评论