「is a」の意味や使い方 わかりやすく解説 Weblio辞書 (original) (raw)
知識表現、オブジェクト指向プログラミング、オブジェクト指向設計では、is-aとは、あるクラスBはもう一つのクラスAのサブクラスである(また、AはBのスーパークラスである)という関係である。
言い換えれば、"B_は_A_である"は通常、概念_B_は概念_A_の特化であり、概念_A_は概念_B_の汎化であることを意味する。例として、「フルーツ」は「リンゴ」、「オレンジ」、「マンゴー」などの汎化である。リンゴはフルーツである(is-a)_ (Apple is a fruit.)と言える。
オブジェクト指向プログラミングでは_is-a_関係は継承という概念の中で使われる。たとえばリンゴは、「果肉に種が入った植物」に属するというような、フルーツすべてに共通するプロパティをすべて_継承_するといって差し支えない。
_is-a関係とは、異なる種類の階層の性質をもつ関係にhas-a_がある。 オブジェクトと従属するオブジェクトの論理関係がis-aか、それともhas-aなのか、いつもはっきりと決定できるものではない。この曖昧さが、is-aのようなメタ言語的な用語を生み出した。