




免费预览已结束,剩余4页可下载查看
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
Java语言面向对象高级程序设计 习 题 四一、填空题1在面向对象系统中,消息分为( )和( )两类。2类的访问控制符有( )和( )两种,( )类具有跨包访问性而( )类不能被跨包访问。3类成员的访问控制符有( )、( )、( )和默认四种。4public类型的类成员可被( )、同一包中的( )和不同包中的 ( )的代码访问引用。5protected类型的类成员可被( )、同一包中的( )和不同包中的( )的代码访问引用。6default类型的类成员只能被( )、同一包中的( )的代码访问引用。7private类型的类成员只能被其所在类中的代码访问引用,它只具有( )域访问性。8系统规定用( )表示当前类的构造方法,用( )表示直接父类的构造方法,在构造方法中两者只能选其一,且须放在第一条语句。9若子类和父类在同一个包中,则子类继承父类中的( )、(prote cted)和( )成员,将其作为子类的成员,但不能继承父类的( )成员。10若子类和父类不在同一个包中,则子类继承了父类中的( )和( )成员,将其作为子类的成员,但不能继承父类的( )和( )成员。11( )直接赋值给( )时,子类对象可自动转换为父类对象,( )赋值给( )时,必须将父类对象强制转换为子类对象。12Java的多态性主要表现在( )、( )和( )三个方面。13重写后的方法不能比被重写的方法有( )的访问权限,重写后的方法不能比被重写的方法产生更多的异常。14Java语言中,定义子类时,使用关键字( )来给出父类名。如果没有指出父类,则该类的默认父类为( )。15Java语言中,重载方法的选择是在编译时进行的,系统根据( )、( )和参数顺序寻找匹配方法。16实现接口中的抽象方法时,必须使用(完全相同)的方法头,并且还要用(public)修饰符。17接口中定义的数据成员均是( ),所有成员方法均为( )方法,且没有( )方法。18this代表( )的引用,super表示的是当前对象的直接父类对象。19如果一个类包含一个或多个abstract方法,则它是一个( )类。20Java不直接支持多继承,但可以通过( )实现多继承。类的继承具有( )性。21没有子类的类称为( ),不能被子类重载的方法称为( ),不能改变值的量称为常量,又称为( )。22一个接口可以通过关键字extends来继承( )其他接口。23接口中只能包含(public static final)类型的成员变量和(public abstract)类型的成员方法。24一般地,内部类又分为定义在方法体外的( )和定义在方法体内的( )两种。25静态内部类可直接通过外部类名引用,其一般格式是( )。26匿名类一般分为( )和( )类两种。27面向对象的软件设计中,根据目的不同模式可分为( )、( )和( )三种。二、选择题1下面关于类的继承性的描述中,错误的是( )。A继承是在已有的基础上生成新类的一种方法BJava语言要求一个子类只有一个父类C父类中成员的访问权限在子类中将被改变D子类继承父类的所有成员,但不包括私有的成员方法2在成员方法的访问控制修饰符中,规定访问权限包含该类自身,同包的其他类和其他包的该类子类的修饰符是( )。A默认 Bprotected Cprivate Dpublic3在类的修饰符中,规定只能被同一包类所使用的修饰符是( )。Apublic B默认 Cfinal Dabstract4下列关于子类继承父类的成员描述中,错误的是( )。A当子类中出现成员方法头与父类方法头相同的方法时,子类成员方法覆盖父类中的成员方法。B方法重载是编译时处理的,而方法覆盖是在运行时处理的。C子类中继承父类中的所有成员都可以访问。D子类中定义有与父类同名变量时,在子类继承父类的操作中,使用继承父类的变量;子类执行自己的操作中,使用自己定义的变量。5定义一个类名为“MyClass.java”的类,并且该类可被一个工程中的所有类访问,则下面哪些声明是正确的?( )Apublic class MyClass extends Object Bpublic class MyClass Cprivate class MyClass extends Object Dclass MyClass extends Object6下列关于继承性的描述中,错误的是( )。A一个类可以同时生成多个子类B子类继承了父类中除私有的成员以外的其他成员CJava支持单重继承和多重继承DJava通过接口可使子类使用多个父类的成员7下列关于抽象类的描述中,错误的是( )。A抽象类是用修饰符abstract说明的 B抽象类是不可以定义对象的C抽象类是不可以有构造方法的 D抽象类通常要有它的子类8设有如下类的定义:public class parent int change() class Child extends Parent 则,下面哪些方法可加入Child类中?( )Apublic int change() Bint chang(int i) Cprivate int change() Dabstract int chang() 9下列关于构造方法的叙述中,错误的是( )。A构造方法名与类名必须相同 B构造方法没有返回值,且不用void声明C构造方法只能通过new自动调用 D构造方法不可以重载,但可以继承10下面叙述中,错误的是( )。A子类继承父类 B子类能替代父类 C父类包含子类 D父类不能替代子类11下列对多态性的描述中,错误的是( )。AJava语言允许方法重载与方法覆盖 BJava语言允许运算符重载CJava语言允许变量覆盖 D多态性提高了程序的抽象性和简洁性12下面关于接口的描述中,错误的是( )。A一个类只允许继承一个接口 B定义接口使用的关键字是interfaceC在继承接口的类中通常要给出接口中定义的抽象方法的具体实现D接口实际上是由常量和抽象方法构成的特殊类13欲构造ArrayList类的一个实例,此类继承了List接口,下列哪个方法是正确的?( )AArrayList myList=new Object(); BArrayList myList=new List();CList myList=new ArrayList(); DList myList=new List();14下列哪些方法与方法public void add(int a)为合理的重载方法?( )Apublic void add(char a) Bpublic int add(int a)Cpublic void add(int a,int b) Dpublic void add(float a)15MAX_LENGTH是int型public成员变量,变量值保持为常量100,其定义是( )。Apublic int MAX_LENGTH=100; Bfinal public int MAX_LENGTH=100;Cpublic final int MAX_LENGTH=100; Dfinal int MAX_LENGTH=100;三、判断题1Java语言中,构造方法是不可以继承的。( )2子类的成员变量和成员方法的数目一定大于等于父类的成员变量和成员方法的数目。( )3抽象方法是一种只有说明而无具体实现的方法。( )4Java语言中,所创建的子类都应有一个父类。( )5调用this 或super构造方法的语句必须放在第一条语句。( )6一个类可以实现多个接口,接口可以实现“多重继承”。 ( )7实现接口的类不能是抽象类。( )8使用构造方法只能给实例成员变量赋初值。( )9Java 语言不允许同时继承一个类并实现一个接口。( )四、分析题1分析下面的程序,写出运行结果。public class Exercises6_1 extends TTpublic void main(String args)Exercises6_1 t = new Exercises6_1(Tom);public Exercises6_1(String s)super(s);System.out.println(How do you do?);public Exercises6_1()this(I am Tom);class TTpublic TT()System.out.println(What a pleasure!);public TT(String s)this();System.out.println(I am +s);运行结果是:( ) 2分析下面的程序,写出运行结果。public class Exercises6_2 private static int count;private String name;public class Student private int count;private String name;public void Output(int count) count+;this.count+;Exercises6_2.count+;Exercises6_2.this.count+;System.out.println(count + + this.count + + Exercises6_2.count + + Exercises6_2.this.count+);public Student aStu() return new Student();public static void main(String args) Exercises6_2 g3 = new Exercises6_2();g3.count = 10;Exercises6_2.Student s1 = g3.aStu();s1.Output(5);运行结果是:( ) 3分析下面的程序,写出运行结果。class Exercises6_3 class Dog private String name;private int age;public int step;Dog(String s, int a) name = s;age = a;step = 0;public void run(Dog fast) fast.step+;public static void main(String args) Exercises6_3 a = new Exercises6_3();Dog d = a.new Dog(Tom, 3);d.step = 29;d.run(d);System.out.println( + d.step);运行结果是:( ) 4分析下面的程序,写出运行结果。class Aclass void go() System.out.println(Aclass); public class Bclass extends Aclass void go() System.out.println(Bclass); public static void main(String args) Aclass a = new Aclass(); Aclass a1 = new Bclass(); a.go(); a1.go(); 运行结果是:( ) 五、改错题1找出下面代码的错误部分,说明错误类型及原因,并更正之。public class Car private String carName; public int mileage; private static final int TOP_SPEED = 200; abstract void alert(); public static int getTopSpeed() return TOP_SPEED; public static void setCarName() carName = 奥迪; public static void setMileage() mileage = 180; 2下列代码不能编译的原因是:( )。class A private int x;public static void main(String args) new B(); class B B() System.out.println(x); 答案一、填空题1(公有消息)和(私有消息)。2(public)和(默认default),(public)(default)。3(public)、(protected)、(private)。4(同一类)、(子类与非子类)(子类与非子类)。5(同一类)、(子类与非子类)(子类)。6(同一类)、(子类与非子类)。7(类)。8(this())(super())9(public)、(protected)和(默认)(private)。10(public)和(protected)(默认)和(private)。11(子类对象)(父类对象)(父类对象)(子类对象)12(方法重载)、(方法覆盖)和(变量覆盖)。13(更严格)。14(extends)(Object类)。15(参数个数)、(参数类型)。16(完全相同)(public)。17(常量数据成员),(抽象方法)(构造)。18(当前对象自身)19(abstract)。20(接口)(传递)性。21(最终类),(最终方法),(最终变量)。22(多个)23(public static final)(public abstract)24(成员类)(局部类)。25(new 外部类名.内部类构造方法( );)。26(语句匿名类)和(参数匿名)。27(创建型)、(结构型)和(行为型)。二、选择题1( C )。2( B )。3( B )。4( C )。5( AB )6( C )。7( C )。8( AB )9( D )。10( C )。11( B )。12( A )。13( C )14( ACD )15( C )。三、判断题1( )2( )3( )4( )5( )6( )7( )8( )9( )四、分析题1运行结果是:( )What a pleasure! I am Tom How do you do?2运行结果是:( )6 1 12 123运行结果是:( )304运行结果是:( )AclassBclass五、改错题1找出下面代码的错误部分,说明错误类型及原因,并更正之。public class Car private String carName; public int mileage; private static final int TOP_SPEED = 200; abstract void alert(); public static int getTopSpeed() return
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025保健品区域独家销售代理合同范本
- 2025版双方新能源汽车研发生产合同协议
- 2025版片石石材开采与运输一体化合同协议书范本
- 2025版商业承兑汇票居间服务与乡村振兴战略合作合同
- 2025年度新能源发电项目电力改造合同范本
- 2025版体育产业新员工保密及赛事信息保护合同范例
- 2025办公场所租赁合同:全包式办公场所租赁管理合同
- 2025年售楼部环境绿化养护合同
- 2025大客户在线教育平台合作合同
- 2025年度道路施工围挡定制安装服务协议
- 2025海航航空食品(北京)有限公司招聘260人笔试参考题库附答案解析
- 2025至2030中国压力袜(弹性袜)行业项目调研及市场前景预测评估报告
- 房屋抵押的合同(标准版)
- 中国土地荒漠化课件
- GA/T 2160-2024法庭科学资金数据检验规程
- DB35∕T 1844-2019 高速公路边坡工程监测技术规程
- 720全景照片制作方案及发布流程
- 工作责任心主题培训ppt课件(PPT 26页)
- 除尘器基础知识培训资料(54页)ppt课件
- 完整解读新版《英语》新课标2022年《义务教育英语课程标准(2022年版)》PPT课件
- 2011版义务教育生物课程标准word版
评论
0/150
提交评论