Почему алмаз не может выводить типы на анонимных внутренних классах?
В Java 7 и более поздних версиях diamond можно использовать для вывода типов, как обычно, без проблем:
List list = new ArrayList();
Тем не менее, это можетt для анонимных внутренних классов, таких как это:
List st = new List() { //Doesn't compile
//Implementation here
}
Почему это? Логично, что в этом сценарии я могу однозначно вывести типString
, Есть ли логическая причина для такого решения, когда тип не может быть выведен из анонимных внутренних классов, или он был опущен по другим причинам?