以参照里氏替换原则）。
物件导向语言中的介面.在一些面向对象程序设计语言中（特别是没有完整多重继承的语言），会用「介面」来定义没有资料，只有方法的抽象资料型别，以此为的签名（signatures）。任一个具有程式及资料的类 (计算机科学)，只要有「介面」中所有的方法，就是「实现」此一介面。而且，就算在单一继承语言中，也可以实现多个介面，因此可以同时「符合」多种型态。介面是资料类型的定义：物件可以改变其型态（例如子程序或方法唿叫中），方式是用其所实现的介面或基底类，而不是直接列出