第8章动物类派生继承与多态精选PPT.ppt
《第8章动物类派生继承与多态精选PPT.ppt》由会员分享,可在线阅读,更多相关《第8章动物类派生继承与多态精选PPT.ppt(30页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第第8 8章动物类派生继承与章动物类派生继承与多态多态第1页,本讲稿共30页能力目标能力目标:理解类的继承,能编写类及其派生子类。理解多态含义,理解上转型对象,能在子类中重写父类的同名方法。能运用继承与多态编写人类派生学生类、动物类派生马类等程序。第2页,本讲稿共30页内容介绍8.1 任务预览8.2 继承与派生8.3 用protected声明受保护成员8.4 关键字super8.5 类类型变量赋值8.6 多态性8.7 本章小结8.8 实训8:人类派生与动物类派生第3页,本讲稿共30页8.1 任务预览 本章实训程序运行结果:第4页,本讲稿共30页8.2 继承与派生继承与派生 计算机世界与自然界一
2、样,类之间也有继承和派生关系。运用继承与派生能达到代码重用、简化编程的目的。语法:public abstract final class 子类名子类名 extends 父类父类 .类的单一继承关系形成了清晰的层次结构,树状图如下:第5页,本讲稿共30页【例8-1】编写人类。再编写继承人类的学生类,学生类还拥有学号字段和学习方法。构造人类和学生类的对象,输出有关信息。class Human1 /人类protected String name;protected char sex;protected int age;public Human1(String name,char sex,int ag
3、e)this.name=name;this.sex=sex;this.age=age;public void think()/思考方法 System.out.println(name+在思考.);第6页,本讲稿共30页class Pupil1 extends Human1 /继承人类的学生类protected String stuNo;/学号public Pupil1(String stuNo,String name,char sex,int age)super(name,sex,age);this.stuNo=stuNo;public void learn()/学习方法 第7页,本讲稿共30
4、页public class Example1 public static void main(String args)Human1 person=new Human1(林冲,男,30);person.think();System.out.println();Pupil1 aPupil=new Pupil1(001,李明,男,6);aPupil.think();aPupil.learn();第8页,本讲稿共30页8.3 用用protected声明受保护成员声明受保护成员 关键字protected可修饰类的字段和方法,这些成员能被所有派生子类直接或间接继承。protected修饰的类成员,还能被类
5、所在的包访问。在例8-1中,使用了关键字protected修饰人类Human1的name、sex和age字段。虽然protected可以修饰字段,但类的封装性要求除了final常量字段外,其它字段一律应为private。故不可滥用protected修饰字段。第9页,本讲稿共30页【例8-2】按照类封装性要求改写例8-1,以保证字段为private。class Human2 private String name;private char sex;private int age;public Human2(String name,char sex,int age)protected String
6、 getName()public void think()第10页,本讲稿共30页class Pupil2 extends Human2 private String stuNo;public Pupil2()public void learn()public class Example2 public static void main(String args)Human2 person=new Human2(林冲,男,30);person.think();Pupil2 aPupil=new Pupil2(001,李明,男,6);aPupil.think();aPupil.learn();第1
7、1页,本讲稿共30页 8.4 8.4 关键字关键字supersuper8.4.1 用super调用父类构造方法 类如果没有显式声明构造方法,则自动生成无参数的默认构造方法。类如果没有显式声明构造方法,则自动生成无参数的默认构造方法。子子类类不不继继承承父父类类的的构构造造方方法法,因因此此,子子类类如如果果想想使使用用父父类类的的构构造造方方法法,必必须须在在子子类类的的构构造造方方法法中中使使用用,并并且且必必须须使使用用关关键键字字super来来表示,而且表示,而且super必须是子类构造方法中的头一条语句。必须是子类构造方法中的头一条语句。【例8-3】编程,验证执行子类构造方法会自动调用
8、父类的构造方法。class Human3 public Human3()System.out.println(构造了一个人);第12页,本讲稿共30页class Pupil3 extends Human3 public Pupil3()/super();/相当于执行了本语句System.out.println(构造了一个学生);public class Example3 public static void main(String args)Pupil3 pupil=new Pupil3();Student第13页,本讲稿共30页8.4.2 用super访问父类字段和方法 除了调用父类构造方法
9、外,super还可在子类中指代父类对象,用于:访问被子类隐藏的父类字段,调用被子类覆盖的父类方法。使用形式:super.父类字段名 super.父类方法名(可选实参表)第14页,本讲稿共30页1 1、成员的隐藏、成员的隐藏 对于子类可以从父类继承的成员变量,只要子类中声对于子类可以从父类继承的成员变量,只要子类中声明的成员变量和父类中的成员变量同名时,子类就隐藏明的成员变量和父类中的成员变量同名时,子类就隐藏了继承的成员变量;子类自己声明定义的方法与父类方了继承的成员变量;子类自己声明定义的方法与父类方法同名是指子类重新声明定义的这个成员方法。法同名是指子类重新声明定义的这个成员方法。第15页
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 章动 物类 派生 继承 精选 PPT
限制150内