Home
Java
Java - Record class (불변 데이터 객체 만들기)
devfoxstar
devfoxstar
June 11, 2024
1 min

Table Of Contents

01
Record class
02
제약 조건
03
활용 이유
04
사용 방법
05
참고 - Record class

Record class


JDK16부터 정식 제공되는 기능으로, 불변 데이터 관리에 최적화된 클래스입니다. 참고로 Kotlin의 Data class와 비슷한 기능을 합니다.

일반 클래스와 다르게 아래 기능들을 자동으로 제공합니다.

  • 필드 캡슐화
  • Constructor
  • Getters
  • equals
  • hashCode
  • toString

제약 조건


  • 레코드 클래스는 final로 선언됩니다.
  • 인스턴스 필드는 private final로 정의됩니다.
  • 공개 생성자 외에 추가 생성자도 만들 수 있습니다.
  • 정적 변수와 메소드도 포함할 수 있습니다.
  • 객체의 불변성 보장으로 Setter 메서드는 제공하지 않습니다.

활용 이유


  • DTO(Data Transfer Object)에 간편하게 사용 가능합니다.
  • DB, JSON 등 다양한 데이터를 심플하게 처리할 수 있습니다.
  • 불변 객체로 데이터 안정성을 보장합니다.

사용 방법


record class를 정의하고, 호출 테스트를 해봅니다.

public record Book(Long id, String title, int price) {

}
public class BookTest {

    public static void main(String[] args) {
        Book book = new Book(1L, "Record class", 100);

        System.out.println(book.title());   //Record class
        System.out.println(book);           //Book[id=1, title=Record class, price=100]
    }

}

참고 - Record class


Record class
Record class


Tags

#Java#Record#RecordClass#Immutable

Related Posts

Java AES 암호화 (128/192/256)
May 06, 2023
1 min
© 2024, All Rights Reserved.

Quick Links

About Me

Media