面向对象编程思想概览(三)继承
一、简介
本讲以大家耳熟能详的《西游记》中的唐僧师徒四人为例,介绍了类的继承的概念和实现方法,总结了继承的特性和优点,帮助同学们理解面向对象编程中继承的用法,进而掌握面向对象程序设计的基本思想。
二、主要内容
- 类的继承的概念
- 类的继承的实现
- 类的继承的应用
- 小结
三、详细内容
3.1、继承的概念
特殊类的对象具有其一般类的对象的全部属性和行为,成为特殊类对一般类的继承。
3.1.1、生活中继承的事例
3.1.2举例《西游记》:
《西游记》中常见的任务有唐僧、孙悟空、猪八戒、沙僧,唐僧是他们的师傅。
定义一个类去描述孙悟空。孙悟空主要有哪些行为呢? 蓝色的是唐僧的同样具有的行为,红色的是孙悟空特有的行为。
到了高老庄,收了猪八戒做徒弟,猪八戒有哪些行为呢?
然后,又走到流沙河,收了沙僧做徒弟,沙僧有哪些行为呢?
3.1.3、类的继承
- 三个类中拜佛、西天取经和守戒律方法重复定义;
- 可以把其中相同的属性和方法提取出来组成唐僧类;
- 孙悟空类、猪八戒类、沙僧类来继承唐僧类;
- 继承之后在每个子类中只需要定义和父类不同的部分。
3.1.4、修改代码
唐僧类{拜佛的行为(){…… } 西天取经的行为(){…… } 守戒律的行为(){…… } }孙悟空类 继承 唐僧类{ 降妖的行为(){ …… }}
猪八戒类 继承 唐僧类{ 牵马的行为(){ …… }}
沙僧类 继承 唐僧类{ 挑担子的行为(){ …… }}
子类具有父类的一般特性(属性和方法),以及自身特殊的特性。
3.2、继承的特点
- 具有层次结构
- 子类继承了父类的属性和方法
3.3、继承的优点
- 父类的属性和方法可用于子类
- 可以轻松地自定义子类
- 代码的可重用性
- 设计应用程序变得更加简单
3.4、类的继承的实现方法
Java语言中类的继承是用extends子句来定义的。格式如下:
class <子类> extends <唯一的一个父类名>{ <类体>}例:public class 孙悟空 extends 唐僧{ ……//孙悟空的独特性为}
3.5、小结
利用生活的事例,我们认识了面向对象编程中的:
- 类的继承的概念
- 类的继承的实现
- 类的继承的应用
采用面向对象编程中的继承,提高了编程的效率。
四、参考视频
太原理工大学公开课:面向对象编程思想概览 — 继承
转载于:https://www.cnblogs.com/da19951208/p/9412310.html
面向对象编程思想概览(三)继承相关推荐
- 面向对象编程思想概览(一)类和对象
一.简介 生活中有许多技巧值得我们在程序设计中模仿和借鉴.采用类的思想可以方便地把具有相同属性和方法归为一类,从而简化编程.本讲利用生活的常见示例,浅显通俗的语言,生动地介绍了面向对象编程中类与对象的 ...
- python完全支持面向对象编程思想_面向对象的编程思想和Python的类,访问和属性,继承...
本文将从访问限制,属性,继承,方法重写这几个方面继续介绍面向对象的编程思想和Python类的继承. 复制代码 一.访问权限: Python中在类的内部定义属性和方法,在类的外部是可以直接调用或进行访问 ...
- 第三章面向对象编程思想
""" 编码规范: 类名首字母应以大写字母开头 类的成员/属性: 成员属性 实例化对象的属性: self.name=name 可以被访问,也可以在类的外部被修改 私有属性 ...
- CoreJava学习第五课 --- 进入第二阶段:面向对象编程思想
面向对象编程思想 1.面向过程 从计算机执行角度出发 ,代码执行过程核心为从程序的运行过程出发,构建编程思路,例: 哥德巴赫猜想 // 面向过程1 用户输入一个数n2 验证数字的正确性2.1 正确 ...
- 面向对象编程思想及入门知识
这几天在调程序,所以想写写自己对"面向对象编程"的一些理解,希望对打算入门计算机编程的同志们有所帮助.之前,好几个师弟问过我,C++与C有什么区别,学习面向对象语言需要掌握哪些基础 ...
- Java学习——面向对象编程思想
目录 一. 基本概念 二. 面向对象与面向过程的区别 三. 面向对象程序设计的类与对象 3.1 对象 3.2 类 四. 面向对象的四大特征 4.1 抽象 4.2 继承 4.3 封装 4.4 多态 1) ...
- 面向过程编程思想和面向对象编程思想
一.面向过程编程思想 百度百科这样解释: "面向过程"(Procedure Oriented)是一种以过程为中心的编程思想. 面向过程其实是最为实际的一种思考方式,就算是面向对象的 ...
- java 以一个例子来理解面向对象编程思想
在面向对象的编程中,面向对象的应用是检验你对现实中实际物体和及其关系的抽象能力.在实际编程过程中,你的能力并不是你掌握了多少新的技术,而是对你当前问题的认识的深度,当你理解的足够深的时候,你的框架就出 ...
- 我们程序员眼中的对象-看完华华的文章妈妈再也不担心我找不到对象了-Java面向对象编程思想理解系列(1)
大家好!!!我叫霜华,是一个帅到没天理 骚里骚气,热爱人生与绿色 是一个不像程序员的程序员 作为一个在java这门领域沉迷一年半的人,如今在技术栈广度和深度 还是业务能力在客观层面讲确实进步迅速 (可 ...
最新文章
- 年薪2亿!51岁苏妈获「半导体诺贝尔奖」,MIT才女变身AMD女掌门
- ROS学习之roslaunch的node标签
- 科大星云诗社动态20210415
- SUN JAVA面试笔试题
- CodeForces - 551C GukiZ hates Boxes(二分+贪心)
- 滴滴2017在线笔试有感
- [你必须知道的.NET] 开篇有益
- NYOJ 305 表达式求值 (字符串处理)
- 互联网人在硅谷:听 Google 资深产品经理 bigjoe 聊聊职业与热爱
- Docker国内Yum源和国内镜像仓库
- 在python中对文件操作的一般步骤是_文件操作(一) 笔记------python
- Vue2-Vue3.0学习笔记(2021年黑马程序员最新视频)
- Mac操作指南:访问Windows共享文件
- open-drain和push-pull的上拉速度
- 笔记本计算机硬盘如何分盘,笔记本分盘,小编教你笔记本硬盘如何分区
- 设置Linux在未登录账号情况下自动连接wifi
- 电脑磁盘右键没有新建文件夹???
- 虚拟机(VMware Workstation Pro15)及系统(Windows10)安装
- 【我参加NVIDIA Sky Hackathon】感悟篇
- 【Web技术】1118- 图片防盗链的实现既然如此简单
热门文章
- 获取当前html的名字,c#获取当前页面名字
- 岩板铺地好吗_铺地的石板如何用出高逼格,三个大师案例来教你!
- shiro-cas------本地配置cas为HTTPS登录
- c语言 万年历问题,【数组函数面试题】面试问题:万年历的C语言… - 看准网
- 用R语言绘制动态地图,代码奉上!(REmap包详解)
- 常用连续型分布介绍及R语言实现
- 2014-7 Andrew Ng 自动化所报告听后感
- php rpc调用,PHP远程调用, 为什么需要使用RPC
- envi栅格TIF数据进行分割_栅格数据镶嵌
- redis mysql 雪崩_Redis缓存雪崩、缓存穿透、并发等5大难题,你有没有解决方案