- 1、本文档共8页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第三章:面向对象作业
1 基础问题
1.1 简述面向对象的特点
1.2 java类是否可以多继承,怎么实现多继承?
1.3 abstract class 和interface 有什么区别?
abstract class是用来模型化那些父类无法确定全部实现,而是由其子类提供具体实现的对象的类。接口(interface)是一种特殊的抽象类,这种抽象类中只包含常量和方法的定义,而没有变量和方法的实现。
1.4 int 和 Integer 有什么区别?
Integer是引用类型—包装类。包装类Integer使得基本数据类型int的数据变成了类,有了类的特点,可以调用类中的方法。
1.5 abstract 的method 是否可同时是static,是否可同时是native,是否可同时是synchronized?
abstract 的method abstract 的method 1.6方法重载(overload)必须满足___CE____。
A. 在不同class中定义的方法 B.在同一类型中定义的方法
C. 方法名必须相同 D.返回类型必须相同
E. 参数一定不同 F.参数可以相同
1.7 重载(overload)和重写(overried,有的书也叫做“覆盖”)的区别?Overload的方法是否可以改变返回值的类型?构造器Constructor是否可被override?
⑴重载与重写的区别:①重写是子类的方法覆盖父类的方法,要求方法名和参数都相同,而重载必须具有不同的参数列表;②重写的返回的类型必须一直与被重写的方法的返回类型相同,重载可以有不责骂的返回类型,只要参数列表不同就可以了;③重写访问修饰符的限制一定要大于被重写方法的访问修饰符,重载可以有不同的访问修饰符;④重写方法一定不能抛出新的检查异常或者比被重写方法申明更加宽泛的检查型异常,重载可以抛出不同的异常。
⑵Overload的方法可以改变其返回值的类型。
⑶构造器Constructor不能被继承,因此不能重写Overriding。
1.8 当一个对象被当作参数传递到一个方法后,此方法可改变这个对象的属性,并可返回变化后的结果,那么这里到底是值传递还是引用传递?为什么?
1.9 接口是否可继承接口? 抽象类是否可实现(implements)接口? 抽象类是否可继承实体类(concrete class)?
接口可继承接口抽象类是可实现(implements)接口
1.10 Anonymous Inner Class (匿名内部类) 是否可以extends(继承)其它类,是否可以implements(实现)interface(接口)匿名内部类1.11谈谈final, finally, finalize的区别
1.12 Static Nested Class 和 Inner Class的不同
2 代码分析
2.1 作用域public,private,protected,以及不写时的区别。辨析下列代码段是否正确
2.2 哪个选项和show函数重载
class Demo{
void show(int a,int b,float c){}
}
A.void show(int a,float c,int b){} B.void show(int a,int b,float c)
C.int show(int a,float c,int b){return a;} D.int show(int a,float c){return a;}
2.3 分析下面那些函数可以存在于Demo的子类中。并写出错误答案错误的原因,用单行注释的方式。
class Demo
{ int show(int a,int b){return 0;}
}
A.public int show(int a,int b){return 0;}//
B.private int show(int a,int b){return 0;}//
C.private int show(int a,long b){return 0;}//
D.public short show(int a,int b){return 0;}//
E.static int show(int a,int b){return 0;}//
答:(A)可以存在于Demo的子类中。子类对show函数的重写,必须和父类中具有相同的方法名称、参数列表和返回值类型;重写show函数不能使用比父类的show函数更严格的访问权限;重写的show函数必须和父类的show函数同时为static的,或同时为非static的。
2.4 下列程序能否编译通
文档评论(0)