继承

  1. 子类从父类继承成员变量
  2. 子类从父类继承成员函数
#include "stdafx.h"
class Person
{
public:int Age;int Sex;void Word(){printf("Person:Work");}
};class Teacher:public Person
{
public:int Level;
};int main()
{Teacher t;t.Age = -1; //合法但是不合理t.Sex = 2;t.Level = 3;return 0;
}

实现数据隐藏

为什么要隐藏数据成员

  1. 与前面比较,赋值的时候 合理不合法,手机的电路板也没有暴露在外面啊
  2. 根本的目的是可控

不要造相同的轮子

代码复用的两种体现方式:

  1. 继承
  2. 共用相同的函数

函数的重写

成员函数的重写特征:

  1. 不同的范围(分别位于派生类与基类)
  2. 函数名字相同
  3. 参数相同
  4. 基类函数必须有virtual关键字,称为虚函数

多态

多态就是可以让父类指针有多种形态。
C++中式通过虚函数实现的多态性

纯虚函数

  1. 虚函数目的是提供一个统一的接口,被继承的子类重载,以多态的形式被调用。
  2. 如果基类中的函数没有任何实现的意义,那么可以定位为纯虚函数。 virtual 返回类型 函数名(参数列表) =0; virtual int fuck(int count) =0;
  3. 含有纯虚函数的类被成为抽象类(abstract class),不能创建对象
  4. 虚函数可以被直接使用,也可以被子类(sub class)重载以后以多态的形式调用,而纯虚函数必须在子类(sub class)中实现该函数才可以使用

转载于:https://www.cnblogs.com/daoyi/articles/Cpp6-feng-zhuang-ji-cheng-he-duo-tai.html

Cpp6 封装、继承和多态相关推荐

  1. java 继承重写_java 封装 继承 重写 多态

    封装:是指隐藏对象的属性和实现细节,仅对外提供公共访问方式. 好处: 将变化隔离.便于使用.提高重用性.提高安全性 封装原则: 将不需要对外提供的内容都隐藏起来.把属性都隐藏,提供公共方法对其访问. ...

  2. 面向对象 详解笔记 方法 类 对象 封装 继承 重写 多态 接口

    文章目录 面向过程&面向对象 面向过程 面向对象 什么是面向对象 回顾方法及加深 方法的定义 修饰符 返回类型 break:跳出switch,结束循环和return的区别 方法名:注意规范就o ...

  3. 本质论之封装继承和多态的介绍

    关于 类,我有一些话想说 说到类那就说到了面向对象的灵魂了,没有它也就没有了封装.继承and多态这些东西了.我还记得在读研期间每次看到这些都望而却步,甚至我搞不懂对象和类的区别(这里防止有人也不知道区 ...

  4. 黑马程序员_JAVA之面向对象(封装,继承和多态)

    ------- android培训.java培训.期待与您交流!---------- 面向对象 一.面向对象概述 定义: 面向对象(Object Oriented,OO)是软件开过过程中使用一种思维方 ...

  5. Java回顾 封装 继承和多态

    封装 什么是封装 封装:就是隐藏对象的属性和实现细节,仅对外提供公共访问方式. 封装时的权限控制符区别如下: 封装的意义 对于封装而言,一个对象它所封装的是自己的属性和方法,所以它是不需要依赖其他对象 ...

  6. java 封装 继承和多态

    2019独角兽企业重金招聘Python工程师标准>>> 多态无处不在.引用的概念最为困难.理解了引用才能理解多态的意义以及应用. 多态的应用的一大前提是继承.以及继承中的重写方法.继 ...

  7. python类与对象 封装继承与多态 0308

    类与对象 初始化方法 init方法 带参实例化类 del方法 str方法 私有 继承 方法的重写 super 父类名称调父类方法 调用父类私有 间接调用 多继承 新式类经曲类 多态 类属性 类方法 静 ...

  8. 07 面向对象编程-结构、封装、继承、多态、接口

    文章目录 Struct定义 struct 方法 工厂模式 面向对象三大特性 封装 继承 接口 多态 Golang支持面向对象编程,但是和传统面向对象有区别,并不是纯粹面向对象的语言,只能说Golang ...

  9. 浅谈对于封装、继承与多态的理解(Java)

    目录 封装 继承 父类成员的访问 如何在子类中访问父类同名的成员 子类构造方法 代码块在继承上的执行顺序 多态 多态的实现条件 重写 多态的优缺点 面向对象程序的三大特征:封装继承和多态. 封装 · ...

  10. Java三大特性:封装,继承与多态

    (尊重劳动成果,转载请注明出处:https://blog.csdn.net/qq_25827845/article/details/84592274冷血之心的博客) 目录 (一)封装 封装的定义 封装 ...

最新文章

  1. Hashtable 中的键值修改问题
  2. h5 video 手机上无法显示_怎样把手机上的导航显示在汽车屏幕上
  3. python期末项目书怎么写_自己写了一部书怎么出版
  4. linux dr校园网端口被占用,Dr.com端口占用的解决
  5. SharePoint 入门书籍推荐 转载来源http://www.cnblogs.com/jianyus/p/3513238.html
  6. 安装最新LAMP环境(CentOS7+PHP7.1.5+Mysql5.7)
  7. oracle Fusion Applications 简介 (Oracle融合管理软件简介)
  8. 12个C语言必背实例
  9. html密码查看器,浏览器密码查看工具(WebBrowserPassView)
  10. mysql 设置忽略大小写
  11. DSPE-PEG4-Mal分子式:C56H103N2O15P的分子量介绍
  12. 简洁的微信Markdown编辑器
  13. 重磅!京东云自研第四代云主机发布;曝国外物理学家开发出用于量子计算机的汇编语言...
  14. maya扇子动画_MAYA制作动画的十大原理!
  15. ulimit -u
  16. GMSL部分问题解答/含官方FAE解答
  17. 中医药大学远程教育计算机,北京中医药大学远程教育计算机基础(2008版) 第6次...
  18. python读取文件夹下txt文件,并转化成excel
  19. PLSQL如何保存用户名和密码
  20. Fluke SimpliFiber Pro FTK1475做光纤损耗测试

热门文章

  1. 初始html(常用标签)
  2. window之hosts
  3. 数据库——startup,startup mount,startup nomount有什么区别
  4. Apache HBase快照介绍
  5. 推荐算法-聚类-均值偏移聚类(爬山算法)
  6. C语言-动态创建二维数组
  7. 【Linux 内核】调度器 ③ ( sched_class 调度类结构体分析 | next 字段 | enqueue_task 函数 | dequeue_task 函数 )
  8. 【Android 返回堆栈管理】打印 Android 中当前运行的 Activity 任务栈信息 | Activity 任务栈信息分析 | Activity 在相同 Stack 中的不同 Task
  9. 【组合数学】生成函数 ( 使用生成函数求解多重集 r 组合数 )
  10. 【Android 应用开发】Android应用的自动更新模块