IntelliJ IDEA Java

Java 18 기능 지원

Read this post in other languages:
English, Français, 简体中文

Java 18이 출시되었으며 IntelliJ IDEA 2022.1 버전부터 이를 지원합니다.

코드 스니펫 지원

API 문서에 예시 소스 코드를 더 간단하게 포함하기 위해 JavaDoc의 표준 Doclet에 대한 @snippet 태그가 JDK 18에 도입되었습니다.

명시적 래퍼가 없어도 스니펫 조각은 여전히 Java 코드로 인식됩니다. 모든 언어를 지정할 수 있으며 언어 삽입 기능은 스니펫에서도 작동합니다. 예를 들어 탐색 가능한 참조는 가져오기를 통해 사용할 수 있는 모든 요소에 대해 작동합니다.

클래스의 바인딩을 사용하여 스니펫의 모든 코드를 작성할 필요는 없습니다. 조각은 IntelliJ IDEA에서 JShell 조각과 유사하게 인식됩니다.

switch 식의 패턴: 두 번째 미리보기

JDK17에 도입된 switch 식의 패턴 일치 사양이 IntelliJ IDEA에서 이미 지원되는 두 가지 기본 변경 사항으로 업데이트되었습니다.

  • 타입이 무엇이든 패턴(보호된 패턴 포함)은 상수 case보다 우위를 차지합니다. 패턴 및 비 상수 case의 우위는 변경되지 않습니다.
  • Sealed 계층 구조의 경우, 하위 타입을 선택자 타입에 사용할 수 없거나 선택자 타입으로 형 변환할 수 없는 경우가 있습니다. 이제 switch 문을 완전하게 만들기 위해 더 이상 이러한 하위 타입을 처리할 필요가 없습니다.

기타 업데이트

Java 18부터 비정적 내부 클래스(익명이든 아니든)는 사용되지 않는 ‘this’를 캡처하지 않으므로 이에 따라 Cleaner captures object reference(Cleaner가 객체 참조를 캡처) 검사가 업데이트되었습니다. 이 검사는 코드에서 다음 경고를 트리거하지 않습니다.

검사: Java | Probable bugs(가능한 버그) | Cleaner captures object reference(Cleaner가 객체 참조를 캡처)

또한 JDK18에서 디폴트 문자 집합은 이제 플랫폼에 따라 다르지 않고 UTF-8입니다. 이에 따라 플랫폼의 디폴트 문자 집합을 묵시적으로 사용하는 메서드 및 생성자 호출을 보고하는 Implicit platform default charset(묵시적 플랫폼 디폴트 문자 집합) 검사가 업데이트되었습니다.

게시물 원문 작성자

Jessie Cho

Olga Klisho

Discover more

IntelliJ IDEA How2Pro - Conseils et astuces pour une utilisation optimale d'IntellI IDEA

주석이 필요하신가요? IntelliJ IDEA에서 전문가처럼 주석을 달아보세요

많은 개발자들은 이 게시물의 제목을 읽은 후 어처구니 없다고 생각하실 수 있습니다. 전문 개발자라면 코드 작성 시 주석을 활용하지 않고도 자기 자신뿐 아니라 앞으로 코드를 접하게 될 다른 개발자에게도 명확하고 가독성 높게 느껴지도록 작성해야 하기 때문이죠. 맞는 말이긴 하지만, 솔직히 실생활에서 항상 명확한 코드를 작성하는 것이 그렇게 쉬운 일은 아닙니다. 그러면 지금부터 코드에 빠르고 효율적으로 주석을 추가하는 방법을 살펴보겠습니다. 코드에는 다양한 유형의 주석을 추가할 수 있으며, 주석이 꼭 코드 스멜을 가리키는 것은 아닙니다. 코드의 가독성이 떨어지거나 향후 수정할 필요가 있는 경우 본인이나 다른 팀원을 위해 주석을 남겨 코드의 의미를 명확히 밝힐 수 있습니다. 다양한 배경을 지닌 개발자 여러 명이 동일하게 참여하는 오픈소스 프로젝트의 경우, 주석을 사용하여 진행 속도를 높이고 코드를 살펴보는 데 소요되는 시간을 단축할 수 있습니다. 또한 주석은 코드를 실제로 삭제하지 않고 임시로 ‘숨겨야’ 할 경우에도 유용합니다. 그뿐 아니라, 해외에서 출시를 하기 위해 애플리케이션을 현지화하는 경우 .properties 파일의 프로퍼티를 주석으로 처리하기도 합니