虚方法和多态

简介: 以来倒置原则程序与设计要以来抽象(Pet)类,而不依赖于具体类(Dog)

依赖倒置原则

程序与设计要以来抽象(Pet)类,而不依赖于具体类(Dog)

基类的引用

派生类的对象包含基类部分和派生类部分,所以,我们可以通过一个基类类型的引用指向派生了类。通过指向派生类的基类引用,我们仅仅只能访问派生类中的基类部分

统一提高效率

我们需要一个容器(比如说一个数组)保存所有的基类(pet),基类描述了共同属性和行为,比如说宠物都有年龄,名字,都可以发出声音,活动,需要卫士...方便管理容易扩展

子类具有差异性

但是,基类又不能涵盖所有晴空和变化,同意的行为方法往往在基类和派生类中有所区别。虽然所有的宠物都能发出声音,但是发出的声音各不相同(具有差异性)

虚方法和多态的武器

虚方法:声明为Virtual的方法就是虚方法。基类的虚方法可以在派生类中使用override进行重新
pet----------------------pet
virtual public void------virtual public void

Speak();-----------------Speak();

Dog----------------------Cat
override public void-----override public void
Speak();-----------------Speak();

相关文章
|
6月前
|
编译器 C语言 C++
49 C++ - 多态
49 C++ - 多态
22 0
|
3月前
|
存储 编译器 C++
|
5月前
|
存储 编译器 C++
C++【多态】
C++【多态】
44 0
|
10月前
|
存储 编译器 C++
<c++>虚函数与多态 | 虚函数与纯虚函数 | 多态的实现原理 | 虚析构函数
<c++>虚函数与多态 | 虚函数与纯虚函数 | 多态的实现原理 | 虚析构函数
101 0
|
6月前
|
编译器
【多态-动态绑定-向上转型-抽象类】
【多态-动态绑定-向上转型-抽象类】
29 0
|
7月前
|
编译器 对象存储 C++
【C++】多态
【C++】多态
13 0
|
7月前
多态
多态是指一个接口或抽象类可以被不同的子类实现,而且这些子类可以有不同的实现方式。例如,我们可以有一个抽象类Animal,然后有Dog和Cat两个子类来实现这个Animal类。然后,我们可以创建一个Animal对象,但是我们不知道这个对象是Dog还是Cat,这就是多态。
20 0
|
10月前
|
编译器 C++
多态(C++)上
多态(C++)
29 0
|
11月前
|
C++
【C++】非常重要的——多态(一)
【C++】非常重要的——多态
45 0
|
11月前
|
编译器 C++ p3c