ジェネリックスを取り巻く型消去については理解していますが、このコードでエラーが発生しないことに驚きました。
public class MyClass {
private final HashMap<ClassA,ClassB> hashMap;
public MyClass() {
this.hashMap = new HashMap<>();
}
}
ほとんどの場合、私はJava1.6でEclipseのJavaStandardバージョンを使用しており、自動補完されたコンストラクター名を選択すると、ジェネリック型が自動入力されます。現在、EclipseとJava 1.7のJ2EEバージョンを使用していますが、使用していません。コードがコンパイルされ、問題ありません。完全に冗長な情報なので、なぜ必要なのかわかりません。しかし、あなたがそれを置く必要がないのはただ間違っていると感じます。
なぜこれが必要ないのですか、それとも私はここで何かを完全に見逃していますか?