里氏替换原则LSP

2017-02-22  本文已影响0人  懵圈de果果

子类可以替换父类的位置,并且程序的功能不受影响,这个就叫里氏替换原则。

为什么?

父类指针迫切需要1个父类对象,而我们给了1个子类对象,这个完全没有问题,因为子类就是父类。

父类中拥有的成员,子类都有,所以不会影响程序的功能。

里氏替换原则表现形式:

当1个 父类指针指向1个子类对象的时候,就有了里氏替换原则。

LSP的作用:

1)1个指针不仅可以存储本类对象的地址,还可以存储子类对象的地址

2)如果1个指针的类型是NSObject类型的,那么这个指针可以存储任意的OC对象地址

3)如果1个数组的元素类型是1一个OC指针类型,那么这个数组中不仅可以存储本类对象,还可以存储子类对象

4)如果1个数组的元素是NSObject指针类型,那么yi'wei'z意味着任意的OC对象都可以存储到这个数组之中。

5)如果1个方法的参数是1个对象,那么我们在为这个参数传值的时候,可以传递1个本类的对象,也可以传递1个子类对象。

当1个父类指针指向1个子类对象的时候,通过这个父类的指针就只能去调用子类对象中的父类成员。

上一篇 下一篇

猜你喜欢

热点阅读