출처 : https://newrelic.com/resources/report/2022-state-of-java-ecosystem > 현재 Java는 Java SE 19 (2022년 9월 출시)에 이어 Java SE 20 (2023년 3월) 출시를 앞두고 있고 20
🏃 람다 표현식 람다 표현식은 익명 클래스(Anonymous Class)처럼 이름이 없는 함수면서 메서드를 인수로 전달할 수 있다. 람다 표현식에는 이름은 없지만, Parameter List, Body, Return Type, 발생할 수 있는 Exception Lis
🌊 Stream Stream이란 데이터 처리 연산을 지원하도록 소스에서 추출된 연속된 요소로 정의한다. 연속된 요소 Collection처럼 특정 요소 형식으로 이루어진 연속된 값 집합의 인터페이스를 제공한다. 소스 Collection, Array, I/O Reso
🔮 Collector Collector 인터페이스의 구현은 Stream의 요소를 어떤 식으로 도출할지 지정한다. 고급 Reducing Stream에서 collect로 결과를 수집하는 과정에서 Collector를 이용하여 고수준의 Reducing을 쉽게 할 수 있다.
🐠 Collection Factory Java SE 9부터 Collection 객체를 쉽게 만들 수 있는 Collection Factory Method를 지원한다. List.of() Immutable(불변의) List를 만들어서 수정이나 추가가 불가능하다. Set
⚽ Optional 클래스 NullPointerException을 피하려면, 대부분 아래와 같이 null 확인 코드를 넣어서 해결하려고 한다. 하지만, 이러한 방식은 코드를 난잡하게 하고 쉽게 파악하기에 어렵다. Java SE 8에서는 java.util.Optio
🐢 기존 날짜 & 시간 API의 문제 기존 자바는 java.util.Date 클래스로 날짜와 시간 관련 기능을 제공하였다. Date 클래스의 문제점 특정 시점을 날짜가 아닌 밀리초 단위로 표현 1900년을 기준으로 하는 Offset 0에서 시작하는 Month In
🍄 Default Method Java SE 8에서는 인터페이스를 정의하는 2가지 방법을 제공한다. 첫 번째는 인터페이스 내부에 정적(static) 메서드를 사용하는 것이며, 두 번째는 디폴트(default) 메서드를 사용하는 것이다. default라는 새로운 키워