java大学实用教程(第二版)附课后练习答案第5章继承、接口与泛型.ppt

java大学实用教程(第二版)附课后练习答案第5章继承、接口与泛型.ppt

ID:56815059

大小:526.00 KB

页数:144页

时间:2020-06-28

java大学实用教程(第二版)附课后练习答案第5章继承、接口与泛型.ppt_第1页
java大学实用教程(第二版)附课后练习答案第5章继承、接口与泛型.ppt_第2页
java大学实用教程(第二版)附课后练习答案第5章继承、接口与泛型.ppt_第3页
java大学实用教程(第二版)附课后练习答案第5章继承、接口与泛型.ppt_第4页
java大学实用教程(第二版)附课后练习答案第5章继承、接口与泛型.ppt_第5页
资源描述:

《java大学实用教程(第二版)附课后练习答案第5章继承、接口与泛型.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第5章继承、接口与泛型本章导读1.子类与父类2.子类的继承性3.子类对象的构造过程4.成员变量隐藏和方法的重写5.super关键字6.final类与final方法7.对象的上转型对象第5章继承、接口与泛型8.继承与多态9.使用abstract类10.接口11.接口回调12.内部类13.匿名类14.异常类15.泛型类5.1子类与父类上一章我们主要学习了类和对象的有关知识,讨论了类的构成以及用类创建对象等主要问题,本章的主要介绍类的继承、和继承有关的多态性以及接口等重要概念。本章还初步介绍了SDK1.5新推出的泛型。子类与父类继承是一种由已有的类创建新类的机制。利用继承,我们可以先创建一个共有属

2、性的一般类,根据该一般类再创建具有特殊属性的新类,新类继承一般类的状态和行为,并根据需要增加它自己的新的状态和行为。由继承而得到的类称为子类,被继承的类称为父类(超类)。5.1子类与父类父类可以是自己编写的类也可以是java类库中的类。利用继承有利于实现代码的重复使用,子类只需要添加新的功能代码即可。Java不支持多重继承,即子类只能有一个父类。使用关键字extends来声明一个类是另外一个类的子类,格式如下:class子类名extends父类名{…..}返回5.2子类的继承性1.继承的定义所谓类继承就是子类继承父类的成员变量和方法作为自己的成员变量和方法,就好象它们是在子类中直接声明一样。当

3、然,子类能否继承父类的变量和方法还有一定的限制。下面对其进行详细介绍。2.子类和父类在同一包中的继承性如果子类和父类在同一个包中,那么子类自然地继承了其父类中不是private的成员变量作为自己的成员变量,并且也自然地继承了父类中不是private的方法作为自己的方法。继承的成员变量以及方法的访问权限保持不变。classFather{privateintmoneyDollar=300;intmoneyHK=200;intadd(intx,inty){returnx+y;}}classSonextendsFather{intmoneyRMB=800;publicvoidchangMoneyHK(

4、intx){moneyHK=x;}publicvoidchangMoneyRMB(intx){moneyRMB=x;}intsubs(intx,inty){returnx-y;}}classGrandSonextendsSon{intmulti(intx,inty){returnx*y;}}publicclassExample5_1{publicstaticvoidmain(Stringargs[]){inta=5,b=3;Sonson=newSon();GrandSonsunzi=newGrandSon();son.changMoneyHK(666);son.changMoneyRMB(50

5、00);System.out.println("儿子的港币是继承的属性,当前的值是:"+son.moneyHK);System.out.println("儿子的人民币是新增的属性,当前的值是:"+son.moneyRMB);System.out.printf("减法是儿子新增的功能,%d-%d等于%d",a,b,son.subs(a,b));System.out.printf("加法是儿子继承的功能,%d+%d等于%d",a,b,son.add(a,b));System.out.println("孙子的港币和人民币都是继承的属性,,当前的值是:");System.out.println

6、("港币:"+sunzi.moneyHK+"人民币:"+sunzi.moneyRMB);System.out.printf("乘法是孙子新增的功能,%d*%d等于%d",a,b,sunzi.multi(a,b));System.out.printf("加法是孙子继承的功能,%d+%d等于%d",a,b,sunzi.add(a,b));System.out.printf("减法是孙子继承的功能,%d-%d等于%d",a,b,sunzi.subs(a,b));}}5.2子类的继承性下面我们看一个例子。程序的运行结果见下图5.2子类的继承性3.子类和父类不在同一包中的继承性如果子类和父类

7、不在同一个包中,那么子类只能继承父类的protected、public成员变量和方法,继承的成员或方法的访问权限不变。如果子类和父类不在同一个包里,子类不能继承父类的友好变量和友好方法。返回5.3子类对象的构造过程当用子类的构造方法创建一个子类的对象时,子类的构造方法总是先调用父类的某个构造方法,如果子类的构造方法没有指明使用父类的哪个构造方法,子类就调用父类的不带参数的构造方法。因此,我们可以这

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

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

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