「サブクラス (計算機科学)」の版間の差分

削除された内容 追加された内容
Hsz (会話 | 投稿記録)
en:Subclass (computer science)18:36, 11 February 2007 Huygens 25 を翻訳。
 
m 訳の調整
1行目:
[[オブジェクト指向プログラミング]]において '''サブクラス'''とその[[スーパークラス (計算機科学)|スーパークラス]]のいくつかのプロパティを[[継承]]する[[クラス (コンピュータ)|クラス]]のことである。
 
あなたは普通、そのクラスのスーパークラスの「一種」が存在するものとして、例えば「[[マンクス]]は猫の一種である」または「正方形は長方形の一種である」なとで、サブクラスのことを考える。
 
あなたプログラマは普通、そのクラススーパークラスの「一種」が存在すであるものとして、例えば「[[マンクス]]は猫の一種である」または「正方形は長方形の一種である」なして、サブクラスのことを考える。
 
* '''猫'''には毛が生えており、四本の脚と尻尾がある
11 ⟶ 10行目:
このように、サブクラスはスーパークラスのより具体的な種類となる。サブクラスは、たとえ数種の猫は尻尾を持たなくても、猫の状態はすべての猫について一般的に当てはまることに関しての事実となる。またすべての長方形は四つの辺を持つが、正方形はすべての辺の長さが同一であるというより限られた特徴を持つ。
 
サブクラス-スーパークラス間の関係がクラス-[[インスタンス]]間との関係とに混同しないこと。「猫のインスタンス」は「ある特定の猫」を参照する。テーブルにあここで述べているマンクス猫はいまだにクラスである。 - つまり、マンクス猫の多くのインスタンスが存在する。特定の猫(猫クラスのインスタンス)が狐によって尻尾を噛みつかれたならば、猫クラスは変わらないだろう。まさにその特定の猫が変わるだけである。
 
サブクラスとスーパークラスはしばしば、[[C++]]開発者[[ビャーネ・ストロヴストルップ]]によって作られた造語として、それぞれ''派生''(''{{lang|en|derived}}'')クラス、''基底''(''{{lang|en|base}}'')クラスと呼ばれる。彼は伝統的命名法よりもより直感でこれらの造語を見いだした。<ref>[[ビャーネ・ストロヴストルップ|Stroustrup, Bjarne]]. ''The Design and Evolution of C++''. Addison-Wesley. Reading, Mass. 1994. ISBN 0-201-54330-3. Page 49</ref>
22 ⟶ 21行目:
 
*[[実装継承]]
*[[継承セマンティクス]]
*[[仮想継承]]
 
[[Category:オブジェクト指向|さふくらす]]
 
[[Category:オブジェクト指向]]
 
[[en:Subclass (computer science)]]