Java 8 ввела лямбда-выражения, что позволило разработчикам писать более лаконичный и понятный код, обращаясь с функциями как с объектами первого класса. Это отлично работает с функциональными интерфейсами — интерфейсами с одним абстрактным методом. Эти возможности кардинально изменили то, как Java-разработчики пишут и структурируют код.
Stream API — это одно из самых значительных дополнений, позволяющее выполнять функциональные операции над коллекциями. Это даёт разработчикам возможность обрабатывать данные декларативно, а не императивно. Плюс улучшения Collections API сделали работу с коллекциями в целом удобнее и быстрее.
Java 8 представила полностью переработанный Date and Time API, который заменил проблемный класс java.util.Date. Новый API лучше справляется с датами, временем и часовыми поясами, а заодно стал понятнее и получил поддержку иммутабельности.
Интерфейсы получили новые возможности через default-методы и static-методы, так что разработчики могут добавлять функциональность в интерфейсы, не ломая существующие реализации. Это позволило развивать API более плавно.
Все эти возможности в совокупности сделали Java современнее и пригодной для функционального программирования, при этом сохранив обратную совместимость.
Lambda-выражения в Java 8 позволяют рассматривать функции как объекты первого класса и могут использоваться только с интерфейсами, имеющими ровно один абстрактный метод, известными как функциональные интерфейсы
Новый — ещё не проверен сообществом
Вы