⚡ 레코드

sonjh919·2023년 10월 23일
0

Java

목록 보기
28/28
post-thumbnail

📌 레코드

  • 자바 레코드(Java Record)는 Java 16부터 추가된 기능으로, 데이터 클래스를 정의할 때 코드를 간결하게 작성할 수 있게 도와주는 역할을 한다.
  • DTO 등 데이터 전달을 목적으로 하는 클래스를 작성할 때, getter, setter, equals(), hashCode(), toString() 등 똑같은 구조의 코드를 계속해서 작성해야 하는 불편함이 있는데, 레코드를 사용하면 한번에 해결된다!!
record 레코드명(컴포넌트1, 컴포넌트2, ...) { }

🌈 레코드의 특징

  1. 필드별 getter가 자동으로 생성된다.
  2. 불변 데이터를 다룬다.(final로 선언된다)
  3. equals, hashcode, toString을 자동으로 생성한다.
  4. 기본 생성자는 제공하지 않는다.
  5. 기본적으로 private로 선언되므로, 접근 제어자를 명시하지 않아도 된다.
  6. 레코드는 다른 클래스를 상속받을 수 없다.
  7. 제네릭 레코드를 만들 수 있다.
  8. 레코드는 클래스처럼 인터페이스를 구현할 수 있다.
  9. new 키워드를 사용하여 레코드를 인스턴스화할 수 있다.
  10. 레코드나 레코드의 각 컴포넌트에 애노테이션을 달 수 있다.
  11. 별도의 초기화 로직이 필요하면 생성자를 따로 만들 수도 있다.

0개의 댓글