我遇到了里氏替换原则的声明原件来到沃德的wiki今晚原始语句的方向性:里氏替换原则和
这到底是怎么想的东西像下面的替代属性:如果每个S类型的对象o1有一个类型为T的对象o2,因此对于所有按照T定义的程序P,当o1代替o2时,P的行为不变,那么S是T的一个子类型。“ - Barbara Liskov,数据抽象和层次结构,SIGPLAN公告,23,5(1988年5月)。
我一直都在ŝ被垃圾在解析谓词逻辑(我没有计算器IV第一次虽然),所以当我有点理解了上面如何翻译为:使用指针或引用基类必须能够使用
功能派生类的对象不知道它。
我不明白的是为什么Liskov属性描述的意思是S是T的一个子类型而不是其他方式。
也许我对OOP还不够了解,但为什么Liskov的声明只允许S→T而不是T→S的可能性呢?
相关:[类型 - 子类型关系。东西似乎不清楚。](http://stackoverflow.com/questions/2268018/type-subtype-relation-something-seems-unclear) – sepp2k 2010-09-05 12:59:35