このようなことは、Javaではまったく意味がありますか?Javaで汎用クラスのパラメータを拡張することはできますか?
class A<T extends B> extends T{
int fun1() {
....
}
}
abstract class B extends X implements C {
}
interface C {
int fun1();
}
クラスBがXとCの両方を理想的に拡張したいと考えています。しかし、Javaには多重継承がないので、私はより滑らかな回避策を考え出しています。
Cで定義されるものは、代わりにスーパークラス "A"で定義されているということです。問題は「拡張」の後にジェネリックタイプを使用させることです。
考えますか?
実際の問題について詳しく説明できますか?私は本当に複数の継承が必要な状況には入らなかった。これは、異なる方法で解決できる設計上の問題かもしれません。あなたのソリューションはやや複雑に見えます。 – Juri
私はまた、このようなクラスの「テンプレート化」はC++のようにjavaで動作しないと付け加えます。 – Chii