里氏代換原則
面向?qū)ο笤O(shè)計的重要原則是創(chuàng)建抽象化,并且從抽象化導(dǎo)出具體化,具體化也就是給出不同的實現(xiàn)。繼承關(guān)系就是一種從抽象化到具體化的導(dǎo)出。
里氏代換原則:
如果對每一個類型為T1的對象o1,都有類型為T2的對象o2,使得以T1定義的所有程序P在所有的對象o1都代換成o2時,程序P的行為沒有變化,那么類型T2是類型T1的子類型。
其實就是一個軟件程序的代碼塊如果使用的是一個基類的話,那么一定適用于其子類,而且它根本不能察覺出基類對象和子類對象的區(qū)別。