**체이닝 메서드(Method Chaining)**란, 객체의 메서드를 호출할 때 연속적으로 호출할 수 있는 프로그래밍 패턴을 의미해. 즉, 하나의 메서드가 객체를 반환하고, 그 반환된 객체에 다시 메서드를 호출하는 방식으로 메서드 호출을 연결(chain)하는 것처럼 작성하는 방법이야.
이 방식은 코드의 가독성과 간결성을 높여주며, 연속적인 작업을 한 줄로 처리할 수 있어. 일반적으로, 각 메서드는 자신을 호출한 객체를 반환(return this)하기 때문에, 연속적인 호출이 가능해져.
예시:
public class Person {
private String name;
private int age;
public Person setName(String name) {
this.name = name;
return this; // 현재 객체 반환
}
public Person setAge(int age) {
this.age = age;
return this; // 현재 객체 반환
}
public void displayInfo() {
System.out.println("Name: " + name + ", Age: " + age);
}
}
public class Main {
public static void main(String[] args) {
Person person = new Person();
person.setName("Alice")
.setAge(30) // 체이닝 메서드
.displayInfo();
}
}
특징:
• 연속적인 메서드 호출: 체이닝 메서드는 한 줄로 여러 메서드를 호출할 수 있어서, 코드가 더 간결해져.
• 가독성: 코드가 논리적으로 연결된 작업을 표현하므로 가독성이 향상돼. 하지만, 너무 복잡하게 체이닝을 사용하면 오히려 가독성이 떨어질 수도 있어.
• 빌더 패턴과 자주 결합됨: 체이닝 메서드는 빌더 패턴에서 많이 사용돼. Lombok의 @Builder도 이러한 체이닝 메서드 방식을 사용해 객체를 쉽게 생성하게 도와줘.
이런 방식은 메서드가 어떤 값을 반환하고 그 반환된 값에 대해 연속적인 작업을 처리해야 할 때 매우 유용해.
'Note-Taking' 카테고리의 다른 글
JPQL 핵심 정리 (1) | 2024.09.20 |
---|---|
JPA 어노테이션의 핵심 정리 (0) | 2024.09.20 |
JPA 연관관계와 지연 로딩 정리 (1) | 2024.09.11 |
Java와 Spring에서의 CRUD, AOP, 트랜잭션 관리 및 네트워크 통신 개념 정리 (1) | 2024.09.05 |
Annotation 기반의 Container Configuration 개념 정리 (0) | 2024.09.03 |