《JAVA语言程序设计》课程教学课件(PPT讲稿)J05_子类与继承

第5章子类与继承 王绍卿
1 第5章 子类与继承 王绍卿

导读 主要内容 ● 子类与父类 子类的继承性 ● 子类对象的特点 ● 成员变量的隐藏和方法重写 ● super关键字, ● final关键字 对象的上转型对象 继承与多态 ● abstract类与abstract方法 ● 面向抽象编程, ● 开-闭原则 难点 成员变量的隐藏和方法重写 ● 开-闭原则 2025/4/2 2
2025/4/2 2 导读

§5.1子类与父类 利用继承,可以先编写一个共有属性的一般 类,根据该一般类再编写具有特殊属性的新类, 新类继承一般类的状态和行为,并根据需要增加 它自己的新的状态和行为。 由继承而得到的类称为子类,被继承的类称 为父类。 声明一个类的子类的格式如下: class子类名extends父类名{ 例如: class Student extends People
3 §5.1 子类与父类 利用继承,可以先编写一个共有属性的一般 类,根据该一般类再编写具有特殊属性的新类, 新类继承一般类的状态和行为,并根据需要增加 它自己的新的状态和行为。 由继承而得到的类称为子类,被继承的类称 为父类。 例如: class Student extends People { . . } 声明一个类的子类的格式如下: class 子类名 extends 父类名 { . . }

类的继承 通过类的继承方式,可以不用编写相同的代码 就能开发出新的类,即程序代码复用。 继承将相关类组成层次结构,允许新类从已存 ■ 在的类中派生,保留它们的属性(即成员变量) 和方法,并根据自己的要求添加新的属性和方 法
类的继承 ◼通过类的继承方式,可以不用编写相同的代码 就能开发出新的类,即程序代码复用。 ◼继承将相关类组成层次结构,允许新类从已存 在的类中派生,保留它们的属性(即成员变量) 和方法,并根据自己的要求添加新的属性和方 法

类的继承 客机一飞机 交通工具 轿车 汽车 货车 对象 子类 父类 超类
类的继承 轿车 货车 汽车 对象 子类 父类 交通工具 超类 客机 飞机

类的继承 ■ 若一个子类只有一个父类,称为单继承反之, 称为多继承。Java不支持多继承,但支持多接 口。 ■子类的对象也是其超类的对象,反之未必。 继承具有传递性。 ■ ■子类的方法可以访问超类或父类的某些成员变 量和方法
类的继承 ◼若一个子类只有一个父类,称为单继承;反之, 称为多继承。Java不支持多继承,但支持多接 口。 ◼子类的对象也是其超类的对象,反之未必。 ◼继承具有传递性。 ◼子类的方法可以访问超类或父类的某些成员变 量和方法

§5.2 子类的继承性 所谓子类继承父类的成员变量作为自己的 一个成员变量,就好象它们是在子类中直接声 明一样,可以被子类中自己定义的任何实例方 法操作。 所谓子类继承父类的方法作为子类中的一个 方法,就象它们是在子类中直接定义了一样, 可以被子类中自己定义的任何实例方法调用。 2025/4/2
2025/4/2 7 §5.2 子类的继承性 所谓子类继承父类的成员变量作为自己的 一个成员变量,就好象它们是在子类中直接声 明一样,可以被子类中自己定义的任何实例方 法操作。 所谓子类继承父类的方法作为子类中的一个 方法,就象它们是在子类中直接定义了一样, 可以被子类中自己定义的任何实例方法调用

§5.2.1子类和父类在同一包中的继承性 如果子类和父类在同一个包中,那么,子类 自然地继承了其父类中不是private的成员变量 作为自己的成员变量,并且也自然地继承了父类 中不是private的方法作为自己的方法,继承的 成员变量或方法的访问权限保持不变。 2025/4/2
2025/4/2 8 §5.2.1 子类和父类在同一包中的继承性 如果子类和父类在同一个包中,那么,子类 自然地继承了其父类中不是private的成员变量 作为自己的成员变量,并且也自然地继承了父类 中不是private的方法作为自己的方法,继承的 成员变量或方法的访问权限保持不变

class car{ String brand; ∥品牌 String color; 颜色 void brake({System.out.println("踩了刹车"分} void speedup(){System.out.println("踩了油门")分 } class buick extends car String type; 车型 String number;∥车牌号码 public class test public static void main(String ]args){ buick p=new buickO); p.brand=-"别克"; p.color=-"白色"; p.ype="凯越; p.number="C-A8888"; System.out.println(p.brand+""+p.number);
class car { String brand; //品牌 String color; //颜色 void brake(){System.out.println("踩了刹车");} void speedup(){System.out.println("踩了油门");} } class buick extends car { String type; //车型 String number; //车牌号码 } public class test{ public static void main(String [ ]args){ buick p=new buick(); p.brand="别克"; p.color="白色"; p.type="凯越"; p.number="鲁C-A8888"; System.out.println(p.brand+" "+p.number); } }

§5.2.1子类和父类在同一包中的继承性 class point{ int x,y; point(int a,int b){x=a;y=b; point() {X=0;y=0;} } class circle extends point{ int radius; circle(int r,int a,int b){ radius=r; x=a; y=b; }
§5.2.1 子类和父类在同一包中的继承性 class point{ int x, y; point(int a, int b) { x=a; y=b; } point( ) { x=0; y=0; } } class circle extends point{ int radius; circle(int r, int a, int b){ radius=r; x=a; y=b; } }
按次数下载不扣除下载券;
注册用户24小时内重复下载只扣除一次;
顺序:VIP每日次数-->可用次数-->下载券;
- 《JAVA语言程序设计》课程教学课件(PPT讲稿)J06_接口与多态.ppt
- 《JAVA语言程序设计》课程教学课件(PPT讲稿)J07_数组与枚举.ppt
- 《JAVA语言程序设计》课程教学课件(PPT讲稿)J08_内部类与异常类.ppt
- 《JAVA语言程序设计》课程教学课件(PPT讲稿)J09_常用实用类.ppt
- 《JAVA语言程序设计》课程教学课件(PPT讲稿)J10_输入、输出流.ppt
- 《JAVA语言程序设计》课程教学课件(PPT讲稿)J11_JDBC操作Derby数据库.ppt
- 《编译原理》课程教学课件(PPT讲稿)cha2 文法和语言(文法实例小C语言).ppt
- 《编译原理》课程教学课件(PPT讲稿,2018)cha1 引论 修订.ppt
- 《编译原理》课程教学课件(PPT讲稿,2018)cha2_1 文法和语言——讲授 修订.ppt
- 《编译原理》课程教学课件(PPT讲稿,2018)cha2_2 文法和语言_短语直接短语句柄——讲授.ppt
- 《编译原理》课程教学课件(PPT讲稿,2018)cha3 词法分析 修订 讲授.ppt
- 《编译原理》课程教学课件(PPT讲稿,2018)cha3 词法分析 阅读.ppt
- 《编译原理》课程教学课件(PPT讲稿,2018)cha4 自顶向下语法分析方法.ppt
- 《编译原理》课程教学课件(PPT讲稿,2018)cha5 自底而上语法分析.ppt
- 《编译原理》课程教学课件(PPT讲稿,2018)cha6 LR分析 修订教材页码.ppt
- 《编译原理》课程教学课件(PPT讲稿,2018)cha7-8 语法制导翻译和中间代码生成 修订增加继承属性简介.ppt
- 《编译原理》课程教学课件(PPT讲稿,2018)cha10_1 代码优化 讲授.ppt
- 《编译原理》课程教学课件(PPT讲稿,2018)cha10_2 代码生成 讲授.ppt
- 《编译原理》课程教学资源(习题答案)编译原理习题答案,第二版,清华.pdf
- 《编译原理》课程教学课件(PPT讲稿)第一章引言.ppt
- 《JAVA语言程序设计》课程教学课件(PPT讲稿)J04_类与对象.ppt
- 《JAVA语言程序设计》课程教学课件(PPT讲稿)J03_运算符、表达式和语句.ppt
- 《JAVA语言程序设计》课程教学课件(PPT讲稿)J03_数据编码.ppt
- 《JAVA语言程序设计》课程教学课件(PPT讲稿)J02_初识对象和简单数据类型.ppt
- 山东理工大学:《数据结构》课程教学资源(数据结构自编习题集).doc
- 《数据结构》课程教学资源(参考资料)数据结构实验指导书.doc
- 《数据结构》课程教学资源(参考资料)线索二叉树提高.ppt
- 《数据结构》课程教学资源(参考资料)数据结构学习方法.doc
- 清华大学出版社:《数据结构基础》课程教材书籍PDF电子书(C语言版,第2版,Ellis Horowitz Sartaj Sahni 著,Susan Anderson-Freed 朱仲涛 译).pdf
- 清华大学出版社:《计算机绘图AutoCAD》课程教学资源(PPT课件)第8章 AutoCAD绘制机械装配图.ppt
- 清华大学出版社:《计算机绘图AutoCAD》课程教学资源(PPT课件)第7章 AutoCAD绘制机械零件图.ppt
- 清华大学出版社:《计算机绘图AutoCAD》课程教学资源(PPT课件)第6章 AutoCAD绘制标准件与常用件.ppt
- 清华大学出版社:《计算机绘图AutoCAD》课程教学资源(PPT课件)第5章 AutoCAD绘制机械图样.ppt
- 清华大学出版社:《计算机绘图AutoCAD》课程教学资源(PPT课件)第4章 AutoCAD尺寸标注.ppt
- 清华大学出版社:《计算机绘图AutoCAD》课程教学资源(PPT课件)第3章 AutoCAD绘制形体视图.ppt
- 清华大学出版社:《计算机绘图AutoCAD》课程教学资源(PPT课件)第2章 AutoCAD绘图平面图形.ppt
- 清华大学出版社:《计算机绘图AutoCAD》课程教学资源(PPT课件)第1章 AutoCAD设计基础.ppt
- 《微机技术与仪器系统设计》课程教学资源(芯片手册)8259A-中断控制器.pdf
- 《微机技术与仪器系统设计》课程教学资源(芯片手册)增强型51,单片机12C5410.pdf
- 《微机技术与仪器系统设计》课程教学资源(芯片手册)基本型51,单片机89C51.pdf
