1、封装是隐藏类的具体细节,这些细节信息是不需要被调用者所了解的,这样最大限度地保证了类的安全性
2、继承可以简化类的设计,并提高代码的可重用性。程序员可以直接使用别人事先写好的基类中已经存在的功能,而不需要重新
对功能进行编码。
3、多态可以使类中名称相同的功能具有不同的实现方式,在调用类的一些功能方法的时候不需要考虑该方法的具体实现。
二、封装、继承、多态的体现
1、封装
封装就是把不要让人知道的信息给打包或设置访问权限,比如我们常见的class类就相当于一个封装,我们在调用
这个类里面的属性或方法时可以不知道具体是怎么实现的,只需要调用就可以了,同时这个类里面的一些访问权限
设置为public,protected,private等类型时有点访问就会受限制,这就体现了封装的特性,更加体现了安全性。
2、继承
在面向对象中,类包含父类(基类)和子类(派生类)两种,被继承的类称为父类,继承别的类称为子类,一个子类只能继承于一
个父类,一个父类能被多个子类继承,要想一个子类有多个继承,可以通过接口来实现。通过这种继承我们父类有的东西,只要
有访问权限都可以调用。这就提高代码的可重用性。程序员可以直接使用别人事先写好的基类中已经存在的功能,而不需要重新
对功能进行编码。
3、多态
多态性定义
同一操作作用于不同的对象,可以有不同的解释,产生不同的执行结果,这就是多态性。多态性通过派生类重载或
重写(override)基类中的虚函数型方法来实现。
1、编译时的多态性
编译时的多态性是通过重载来实现的。对于非虚的成员来说,系统在编译时,根据传递的参数、返回的类型
等信息决定实现何种操作。
2、运行时的多态性
运行时的多态性就是指直到系统运行时,才根据实际情况决定实现何种操作。C#中,运行时的多态性通过虚
成员实现。
结果:
Animal eat
Dog eat
shepherdDog eat