在JSR-334中:
不支持将Diamond与匿名内部类一起使用,因为这样做通常需要扩展类文件签名属性以表示不可表示的类型,这实际上是JVM的更改。
我想是众所周知的,匿名类导致生成自己的类文件。
我想这些文件中不存在泛型类型,而是由有效(静态)类型代替了(因此由显式类型声明,例如
<String>在声明对象时)。
确实,与内部类相对应的文件永远不会在其多个不同的实例之间共享,那么为什么要对它使用泛型呢?:)。
对于编译器来说,将这些类文件强制扩展(通过为泛型添加特殊属性)是很难实现的(并且肯定是无用的)。



