私は次のクラス構造を持っています:
public abstract class Generic<T extends SuperClass>
public class SuperGeneric<T extends SuperClass & SomeInterface>
extends Generic<T>
SuperGeneric次に、可能なすべてのクラスをカバーするインスタンスを作成します。私はこのようにそれを試しました:
Generic<? extends SuperClass & SomeInterface> myGeneric
= new SuperGeneric<? extends SuperClass & SomeInterface>();
今、これはうまくいかないようです。そのGeneric上で次のエラーが発生します:Incorrect number of arguments for type Generic<T>; it cannot be parameterized with arguments <? extends SuperClass, SomeInterface>。
そして、new SuperGeneric私は同様のエラーを受け取ります:Incorrect number of arguments for type SuperGeneric<T>; it cannot be parameterized with arguments <? extends SuperClass, SomeInterface>。
このインスタンスを正しく作成する方法はありますSuperGenericか?
条件を満たす2つの異なるクラスがありextends SuperClass & SomeInterfaceますが、それらを1つのタイプで一般化することはできません。