Лямбда против анонимной производительности внутреннего класса: снижение нагрузки на ClassLoader?
Я хотел бы знать, насколько велико преимущество лямбды в Java 8. Я согласен, что иногда использование лямбды может быть более читабельным, но действительно ли это так сильно влияет на производительность? Или это в основном сфокусировано как синтаксический сахар?Я иногда предпочитаю анонимные внутренние классы; я действительно теряю много преимуществ, когда я не использую лямбду все время?
Единственный? Большой? мне кажется, что прирост производительности заключается в том, что мы на самом деле не создаем классы, которые загрузчик классов должен загружать в начале программы, например, создавая множество потоков:
Thread t = new Thread(new Runnable() {
public.....
});
создает классы какSample$1.class
.
Кроме этого,Есть ли какая-либо производительность или другие скрытые преимущества, помимо читабельности, удобства обслуживания и т. д. кода? Где-то спрятан в JVM? Я видел подобные вопросы, но большинство из них были сосредоточены на визуальной стороне; Я не заинтересован в этом. Вопрос из любопытства после просмотраJava 8 Lambdas Hacking с венкатом субраманиам.