- 0
- 0
- 约3.2千字
- 约 14页
- 2026-03-02 发布于山东
- 举报
项目八继承和多态任务一几何图形的继承关系设计—继承的使用Java程序设计任务驱动教程
项目八继承和多态任务一几何图形的继承关系设计任务二宠物喂养中的继承和多态
任务要求假设需要定义类来描述圆形、矩形和三角形,这些类有共同的特征,那么如何设计这些类能够避免冗余,并且使系统易于理解和维护?请使用继承来实现。
引言:继承的概念与意义“青,取之于蓝,而青于蓝;冰,水为之,而寒于水。”●定义:继承是面向对象编程中复用现有类属性和方法的核心特性。●核心价值:提高代码复用性、扩展类功能、建立清晰的类层次结构。
1.继承基础:父类与子类两个类之间是is-a关系,例:猫是动物,CatisanAnimal,两个类之间就是继承关系[修饰符]class子类名extends父类名{//程序核心代码}语法在Java中,类的继承是指在一个现有类的基础上去构建一个新的类,构建出来的新类被称作子类,现有类被称作父类或基类,子类会自动拥有父类所有可继承的属性和方法。如果想声明一个类继承另一个类,需要使用extends关键字
1.继承示例示例:动物中的继承关系//父类AnimalclassAnimal{Stringname;voidshout(){...}}//子类DogclassDogextendsAnimal{voideatBone(){...}}//子类CatclassCatextendsAnimal{voidplayBall(){...}}
2.继承的注意事项单继承原则:Java类仅能有一个直接父类多层继承:子类可作为其他类的父类(例:B继承A,C继承B,则C是A的间接子类)多子类共享父类:多个类可继承同一父类(例:Dog和Cat均继承Animal)关于继承classA{}classB{}classCextendsA,B{}判断对错C类不可以同时继承A类和B类classA{}classBextendsA{}classCextendsA{}类B和类C都可以继承类AclassA{}classBextendsA{}classCextendsB{}类C是类B的子类,也是类A的子类
3.方法的重写(Override)概念:子类修改继承的父类方法以实现特有行为。子类中重写的方法需要和父类中被重写的方法:方法名、参数列表、返回值类型完全相同子类方法权限:子类重写的方法不能使用比父类方法更严格的访问权限继承规则classAnimal{voidshout(){//方法:动物叫声}}classDogextendsAnimal{voidshout(){System.out.println(子类重写父类方法shout:小狗汪汪叫);}}classDogextendsAnimal{voidshout(){System.out.println(子类重写父类方法shout:小猫喵喵叫);}}示例
4.super关键字的应用作用:在子类中访问父类的非私有成员。调用父类成员:调用父类构造方法:super.成员变量super.成员方法()super()或super(参数),必须为子类构造方法第一条语句classCarextendsVehicle{voidstartEngine(){super.startEngine();//调用父类方法System.out.println(子类:车门上锁!);}}classCarextendsVehicle{Car(){super();//调用父类构造方法System.out.println(子类:构造方法”);}}classVehicle{voidstartEngine(){System.out.println(父类:车门上锁!);}}classVehicle{Vehicle(){System.out.println(父类:构造方法!);}}
5.重写(Override)在继承关系中,子类会自动继承父类中公共的方法,但有时在子类中需要对继承的方法进行一些修改,即对
您可能关注的文档
- MySQL数据库原理及应用课件 项目3 创建与维护MySQL数据库.pptx
- MySQL数据库原理及应用课件 项目4 创建与维护学生信息管理数据表.pptx
- MySQL数据库原理及应用课件 项目6 优化查询学生信息管理数据库.pptx
- MySQL数据库原理及应用课件 项目7 以程序方式处理学生信息管理数据表.pptx
- MySQL数据库原理及应用课件 项目8 维护学生信息管理数据库的安全性.pptx
- Java程序设计任务驱动教程课件 项目1 任务1 Java开发环境配置.pptx
- Java程序设计任务驱动教程课件 项目1 任务2 编写第一个Java程序.pptx
- Java程序设计任务驱动教程课件 项目2 任务1 使用集成开发工具开发 Java 程序.pptx
- Java程序设计任务驱动教程课件 项目3 任务1 计算圆的面积 — Java基本语法的使用1.pptx
- Java程序设计任务驱动教程课件 项目3 任务1 计算圆的面积 — Java基本语法的使用2.pptx
最近下载
- 《阿尔茨海默病及相关痴呆的营养预防和干预专家共识(2025)》解读PPT课件.pptx VIP
- 关于高校基层党组织机构优化设置的探讨.doc VIP
- 2025江苏医药职业学院单招《英语》真题附参考答案详解【精练】.docx VIP
- 第一单元第一课《领略丝路遗珍》课件2025-2026学年人美版初中美术八年级下册.pptx VIP
- 岩土工程勘察收费标准(完整版).docx VIP
- 2025四川省中职学生单招考试英语答案 .pdf VIP
- 快消年度工作总结.pptx VIP
- 慢性肾脏病相关瘙痒管理中国专家共识解读(PPT课件.pptx VIP
- 企业所得税年度纳税申报表A类.pdf VIP
- 2022高二英语人教版新教材选择性必修三课文及翻译(英汉对照).pdf VIP
原创力文档

文档评论(0)