C++笔记——多态
来源:互联网 发布:win10软件小助手 编辑:程序博客网 时间:2024/06/08 00:30
同样的方法调用而执行不同操作、运行不同代码。
多态通过分离做什么和怎么做,从另一个角度将接口和实现进行分离。
多态消除了类型之间的耦合关系。
LSP(Liskov替换原则):子类型必须能够替换掉它们的基类型。
多态的概念基于对象引用的动态绑定特性。
多态实现过程:
1. 子类重写父类的方法;
2. 代码中向父类型变量发出消息(静态绑定---编译期);
3. 运行时,根据变量实际引用的对象类型决定调用哪个方法(动态绑定---运行期)。
动态绑定是多态现象的根源。
虚函数与抽象类。
class Animal{
virtual ~Animal();
virtual void makeSound();
};
纯虚函数与接口类。接口类不能实例化,不能生成对象实例。
class Animal{
virtual ~Animal() = 0;
virtual void makeSound() = 0;
};阅读全文
0 0
- c笔记——概述
- c笔记——数据
- JSTL笔记—c标签
- [JSTL笔记]—c标签
- C++—STL学习笔记
- c笔记——C,C++,JAVA,C#语言差别
- 【笔记-C++】 多态
- 《Windows via C/C++》学习笔记 —— Windows 线程
- C程序设计笔记——第一章 程序设计和C语言
- Linux C学习笔记——C语言基础
- C语言学习笔记——C语言编程
- 《objective-c程序设计》笔记——C语言相关篇
- c++/c 学习笔记——基础(2)
- c++/c 学习笔记——(5)
- C学习笔记——接触C语言
- 【C++】学习笔记五——C-风格字符串
- C语言笔记——C语言编程01
- C语言学习笔记——C语言简介
- 复习【temp】
- 正则表达式
- [数学] 欧拉角、四元数
- 8、jQuery核心--动画篇
- 面试程序题----Sql语句的优化
- C++笔记——多态
- 3种指针
- pycharm配置Anaconda解释器
- SQL语句
- 二叉树怎么打印根节点到指定节点的路径及两个节点之间的路径
- 第二章 线性表(链表的建立与合并)
- react-table组件入门和在IE11上遇到的坑
- 10.20mysql优化以及修改权限
- LeetCode 1. Two Sum