Is-a

维基百科,自由的百科全书
跳转至: 导航搜索

知识表示面向对象程序设计面向对象设计的領域裡,is-a英语subsumption,包含架構)指的是類別的父子繼承關係,例如類別D是另一個類別B子類別(類別B是類別D父類別)。

換句話說,通常"D is a B"(BD包含在內,或是D被包含在B內)指的是,概念體D物是概念體B物的特殊化,而概念體B物是概念體D物的一般化。舉例來說,水果苹果橘子芒果與其他水果的一般化。

面向对象程序设计裡,is-a類別關係是在繼承概念的背景之下所形成的。有一說法是,對於所有水果來說,苹果繼承(英语inherit)所有的屬性,就像是肉質多的水果包住種子般。

is-ahas-a兩者是不同的對比,是以整體-附屬階層關係所組成的。也可以是instance-of的對比:請參考型態與個例的區別

在真實世界裡設計一個模型時(例如计算机程序),尤其是物件與它的下一層從屬物件,在has-ais-a兩者的關係上容易產生概念上的錯誤。

其他條目[编辑]

參考資料[编辑]