リスト内の親クラスで定義されたいくつかの設定からいくつかのクラスを継承させたいのですが、それをきれいな方法で作成する方法がわかりません。
例を挙げてみましょう: 宝くじのプレイヤーがいて、NorthFolks は 3、5、7 が好きで、SouthFolks は 12、17、21 が好きなように、好きな数字があると想像して
ください。 、しかし13と31も好きです。
したがって、明らかに、3、5、7、13、31 を優先数値として定義することもできますが、これらの設定を継承するにはどうすればよいでしょうか?
最良の解決策は、継承を連鎖させて、たとえば、666 も必要とする SuperstitiousNorthFolk を継承する SatanistSupersitiousNorthFolk を定義できるようにすることです。
質問について:私は何を試しましたか:コンパイルされなかったか、機能しなかったか、またはかなり醜いものだけ。
編集:私はクラスを使用していません。ユーザーにとって非常に透過的な方法でそれらを機能させたいと思います。パブリックまたはプライベートの優先プロパティを使用して、まったく同じように見えます。これについてはまだはっきりしていません。
のようなもの (!これが機能しないことはわかっています!)
Class NorthFolks {
List<int> prefs = [3, 5, 7 ];
}
と
Class SuperstitousNorthFolks {
List<int> prefs = [13, 31] ;
}
と
Class SatanistSuperstitousNorthFolks {
List<int> prefs = [666] ;
}
したがって、実際には「これらの要素を追加する」ことを意味するセッターと、継承されたすべての要素を含むすべてを提供するゲッターを使用できます...私が言ったように、解決策についてはまだ明確ではありません(そうでなければ、私は推測しますSOで尋ねません!! :-) )
EDIT 2:それは不可能だと思いますが、誰かがそれを見ていない場合:12、17、21、13を持つクラスを取得するためにSouthPeopleを迷信とSatanistで拡張できるように、ミックスインの方法で機能することが好きです、31 および 666 を優先図として使用します。
Rq : 現在ミラーは js に対応していないため、できればミラーの使用は避けたいと考えています。