设计模式原则----里氏替换原则,依赖倒置原则

一、里氏替换原则。
里氏替换原则(LSP)简而言之就是子类要完全实现父类的外在表现。通俗的讲就是“老鼠的儿子会打洞”。
举个例子说比如说鸟类会飞,鸟这一大类的子类,大雁,麻雀,丹顶鹤都应该会飞。这样就是符合里氏替换原则的。
但是不是所有的鸟都会飞的,比如说企鹅。企鹅就不会飞,但是却被归为鸟类。在计算机中的继承和自然界的继承是不一样的。计算机的子类如果不符合里氏替换原则就会让既有的设计无法封闭。
那么怎么改呢,鸟类会飞,企鹅不会飞,那么就是说企鹅不能继承鸟类,它可以继承动物类,或者哺乳动物类等等(这里只是举个例子)。

LSP:子类必须能够替换掉它的父类型.EG: B extends A—–>B is A.

二、依赖倒置原则
a、上层不应该依赖下层模块,两者都应该依赖抽象;
b、抽象不应该依赖于实现细节,实现细节依赖于抽象。
说白了就是要针对接口编程,不要对实现编程。
比如计算机中的硬盘坏了,那么只需要换个硬盘,而不用换整个电脑。换的硬盘只需要是符合接口的任何一块硬盘。

你可能感兴趣的:(android开发知识点)