GoogleのGuavaImmutableSetクラスを使用して、時間的プロパティ(java.util.Dateおよびorg.joda.time.DateTime)を持つ不変クラスのセットを作成しようとしています。
private static final ImmutableSet<Class<?>> timeLikeObjects = ImmutableSet.of(Date.class, DateTime.class);
なぜこのコンパイラエラー(EclipseのJava 1.6)が発生するのか、私は完全に困惑しています。
Type mismatch: cannot convert from ImmutableSet<Class<? extends Object&Serializable&Comparable<? extends Comparable<?>>>> to ImmutableSet<Class<?>>
これが機能することに注意してください。
private static final ImmutableSet<?> timeLikeObjects = ImmutableSet.of(Date.class, DateTime.class);
しかし、私は明らかにtimeLikeObjectsタイプの一般的な説明の一部を失っています。
一般的な説明でアンパサンド記号に出くわしたことはなく、有効な構文ではないようです。
私が見逃しているJavaGenericsで多重継承を指定する方法はありますか?