java语言程序设计(郑莉)第四章课后习题答案解析

java语言程序设计(郑莉)第四章课后习题答案解析

ID:25080089

大小:113.54 KB

页数:11页

时间:2018-11-18

java语言程序设计(郑莉)第四章课后习题答案解析_第1页
java语言程序设计(郑莉)第四章课后习题答案解析_第2页
java语言程序设计(郑莉)第四章课后习题答案解析_第3页
java语言程序设计(郑莉)第四章课后习题答案解析_第4页
java语言程序设计(郑莉)第四章课后习题答案解析_第5页
资源描述:

《java语言程序设计(郑莉)第四章课后习题答案解析》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、Java语言程序设计第四章课后习题答案1.子类将继承父类所有的属性和方法吗?为什么?答:不,子类不能直接访问从父类中继承的私有属性及方法,但可以对公有及保护方法进行访问。2.方法的覆盖与方法的重载有何不同?答:覆盖是运用在子类中实现与父类相同的功能,但采用不同的算法或公式;在名字相同的方法中,要做比父类更多的事情;在子类中需要取消从父类继承的方法。3.声明两个带有无参构造方法的两个类A和B,声明A的子类C,并且声明B为C的一个成员,不声明C的构造方法。编写测试代码,生成类C的实例对象,并观察结果。//

2、A类publicclassA{publicA(){System.out.println("输出A类");}}//B类publicclassB{publicB(){System.out.println("输出B类");}}//C类publicclassCextendsA{Bb=newB();}//测试类publicclasstest4_3{publicstaticvoidmain(Stringargs[]){Cc=newC();}}运行结果:4.声明一个基类A,它只有一种非默认构造方法;声明A的子类B,

3、B具有默认方法及非默认方法,并在B的构造方法中调用基类A的构造方法。//A类publicclassA{publicA(Stringlin){System.out.println("A类的非默认构造方法"+lin);}}//B类publicclassBextendsA{publicB(){super("Fuckyourteacher");System.out.println("B默认类构造方法");}publicB(Stringlin){super(lin);System.out.println("B类

4、非构造方法");}}//测试类publicclasstest4_4{publicstaticvoidmain(Stringargs[]){newB();System.out.println();newB("Fuckmyteacher");}}运行结果:5.声明一个类,它具有一种方法,此方法被重载三次,派生一个新类,并增加一种新的重载方法,编写测试类验证四种方法对于派生类验证四种方法对于派生类都有效。//A类publicclassA{publicvoidshowTime(){System.out.pri

5、ntln("空重载");}publicvoidshowTime(intl){System.out.println("整形参数重载");}publicvoidshowTime(charl){System.out.println("字符参数重载");}}//B类publicclassBextendsA{publicvoidshowTime(Stringl){System.out.println("字符串参数重载");}}//测试类publicclasstest4_5{publicstaticvoidmai

6、n(Stringargs[]){Bb=newB();b.showTime();b.showTime(5);b.showTime('f');b.showTime("林楚金");}}6.声明一个具有final方法的类,声明一个派生类,并试图对这个方法进行重写,会有什么结果。//A类publicclassA{publicfinalvoidshowTime(){System.out.println("类A中方法");}}//B类publicclassBextendsA{publicvoidshowTime()

7、{System.out.println("类B中方法");}}//测试类publicclasstest4_6{publicstaticvoidmain(Stringargs[]){Bb=newB();b.showTime();}}运行结果:(说白了就是B中showTime()的无法覆盖A中showTime(),被覆盖为final,不能覆盖。)7.声明一个final类,并试图声明其派生类,会有什么结果。//A类publicfinalclassA{}//B类publicclassBextendsA{}//

8、测试类publicclasstest4_7{publicstaticvoidmain(Stringargs[]){Bb=newB();}}运行结果:(说白了就是无法从A中进行继承)8.什么是抽象类?抽象类中是否一定要包括抽象方法?答:抽象类是一个不完全的类,不能使用new方法进行实例化。抽象类可以包含抽象方法,也可以不包含抽象方法,但有抽象方法的必须是抽象类。9.this和super分别有哪些特殊含义?都有哪些种用法?答:this表示当前类;super表

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。