理解できないエラーが発生します。私はJavaでクラスCoupleを次のように定義しました:
public class Couple<T1, T2>{
private T1 t1;
private T2 t2;
public Couple(T1 t1, T2 t2) {
this.t1 = t1;
this.t2 = t2;
}
public Couple() {
this.t1 = null;
this.t2 = null;
}
public T1 getFirst(){return t1;}
public T2 getSecond(){return t2;}
}
そして別のクラスでは、次のように配列を定義しようとしています。
Couple<byte[], byte[]>[] res = new Couple<byte[], byte[]>[10];
しかし、Eclipseは私にエラーを教えてくれます"Cannot create a generic array of Couple<byte[], byte[]> "
。さて、私が理解していないのは、私が数バイト[]が欲しいと言ったので、現時点では一般性がないということです、私は間違っていますか?
Javaジェネリックは具体化されていません。つまり、「実装」はそれ自体がクラスではありません。ジェネリック型の配列を作成できないという事実は、言語に固有の制限です。
配列の代わりにリストを使用することをお勧めします。
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加