依赖倒置原则
程序与设计要以来抽象(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();