クラスの継承の事例
出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2021/12/22 07:06 UTC 版)
「共変性と反変性 (計算機科学)」の記事における「クラスの継承の事例」の解説
共変性と反変性はクラスの継承でよく用いられる。ジェネリッククラスの継承の共変性反変性は、総称化データ構造の共変性反変性と似た用法になる。クラスのメソッドの継承の共変性反変性は、関数の型の共変性反変性と似た用法になる。 共変性反変性で枠組みされたクラスのメソッドの継承の型安全性を、バーバラ・リスコフは振る舞いサブタイピング(英語版)の概念で説明している。 リターン型とパラメータ型が同じままの継承(型安全) リターン型の共変の継承(型安全) パラメータ型の反変の継承(型安全) パラメータ型の共変の継承(型安全ではない) 歴代オブジェクト指向言語でのメソッドの継承の共変性反変性は、下のように変遷している。Eiffel(86年発表)のパラメータ型は共変だったようだが、リスコフの置換原則(94年発表)で反変に路線修正されている。 パラメータ型リターン型20世紀の典型OOP言語 同じまま 同じまま Eiffel 共変 共変 C++ (98年から), Java(5.0から), C#(9から), D言語 同じまま 共変 Scala, Sather 反変 共変
※この「クラスの継承の事例」の解説は、「共変性と反変性 (計算機科学)」の解説の一部です。
「クラスの継承の事例」を含む「共変性と反変性 (計算機科学)」の記事については、「共変性と反変性 (計算機科学)」の概要を参照ください。
- クラスの継承の事例のページへのリンク