CS/Java

Java 버전 특징 이해하기

Ynghan 2024. 3. 7. 23:31

※ 추후 지속적으로 내용을 추가할 예정입니다.

 

개요

(2014) 자바 8에서 stream api가 추가되었음

(2017) 자바 9에서는 모듈화를 지원하게 됨

(2018) 자바 10, 11(LTS) 출시함

  • 6개월 주기로 메이저 버전을 출시한다고 했음
  • 3년 주기로 LTS 버전을 출시한다고 함
  • 17 버전 이후로 2년으로 수정
LTS(Long Term Service) : 새로운 버전이 나와도 지속적인 지원을 해주는 버전.

(2021) 자바 17 LTS 버전 출시

  • 이후 2년 주기로 LTS 버전을 출시하기로 함

매년 자바 11의 사용률이 증가하고 있다.

추가된 기능 정리

Java 9

+ 모듈화 기능
+ 인터페이스에도 private 접근 제한자 사용 가능
+ 불변 컬렉션 생성 : List.of() / Set.of() / Map.of()

 

모듈이란? 

우리가 사용하는 패키지가 클래스들의 묶음이라면, 모듈은 패키지의 묶음.

기존 패키지 방식의 문제는 여러 패키지에서 공용으로 사용하는 클래스들을 외부로부터 숨길 수 없었다.

  • 이는 외부에서도 클래스 접근을 할 수 있음
  • 런타임시 사용하지 않는 클래스들도 포함해야 했음
  • 모듈화를 통해 패키지를 캡슐화하고 이러한 문제점을 해결할 수 있음
  • private
    • 메서드를 분리 가능
    • 메서드 중복 사용 가능
    • private static도 사용 가능

'CS > Java' 카테고리의 다른 글

Checked Exception과 Unchecked Exception에 대해 알아보자.  (0) 2024.03.22
Hashtable  (0) 2023.12.13
StringTokenizer  (1) 2023.03.17
자바에서 형 변환  (0) 2023.03.17
Java OpenJDK 11 설치  (0) 2023.03.01