@데이터, @AllArgsConstructor, @NoArgsConstructor
롬복이것은 라이브러리에서 제공하는 주석입니다.
getter/setter 메서드, 생성자 내 등 자동으로 생성하는 기능을 제공합니다
@데이터
클래스의 모든 필드에 대해 Getter, setter, toString, equals 및 hashCode 메서드가 자동으로 생성됩니다.
@Data
public class Person {
private String name;
private int age;
private String email;
}
Person person = new Person();
person.setName("John");
person.setAge(30);
person.setEmail("[email protected]");
System.out.println(person.getName()); // "John"
System.out.println(person.getAge()); // 30
System.out.println(person.getEmail()); // "[email protected]"
@AllArgs 생성자
모든 필드를 인수로 사용하는 생성자를 자동으로 생성합니다.
@Data
@AllArgsConstructor
public class Person {
private String name;
private int age;
private String email;
}
Person person = new Person("John", 30, "[email protected]");
@NoArgs 생성자
매개변수 없이 기본 생성자를 자동으로 생성합니다.
@Data
@AllArgsConstructor
@NoArgsConstructor
public class Person {
private String name;
private int age;
private String email;
}
Person person1 = new Person(); // 파라미터가 없는 생성자 호출
Person person2 = new Person("John", 30, "[email protected]");
위의 예에서는 Lombok을 사용하여 클래스에 대한 getter/setter 메서드 및 생성자를 자동으로 생성합니다.
이것은 코드의 길이를 줄이고 코드의 가독성을 향상시킬 수 있습니다.
또한 필드 추가/삭제와 같은 변경을 수행할 때 getter/setter 메서드 및 생성자를 수동으로 수정할 필요가 없기 때문에 코드 유지 관리성이 향상됩니다.