Java 10允许anonymous class使用var类似:
var a1 = new Object(){};
var a2 = new Object(){};
但是这个赋值会抛出一个错误:
a1 = a2;
jshell> a1 = a2; | Error: | incompatible types: $1 cannot be converted to $1 | a1 = a2; | ^^
根据错误日志,为什么 Java 10 不能将两个推断var的 s分配anonymous class给彼此,但它可以对 , 等其他类型做同样的Long事情String?