
accept 메서드는 Visitor Design Pattern의 핵심입니다. 이 메서드는 Visitor 인터페이스를 구현한 객체를 인자로 받아, 해당 객체가 방문할 대상에 대한 처리를 수행합니다.
accept 메서드의 파라미터는 Visitor 인터페이스를 구현한 객체의 인스턴스입니다. 반환 타입은 일반적으로 void이지만, 방문한 객체의 결과를 반환하는 경우에는 방문한 객체의 타입을 반환 타입으로 사용할 수 있습니다.
accept 메서드의 사용법은 다음과 같습니다.
#hostingforum.kr
java
// Visitor 인터페이스 구현
public interface Visitor {
void visit(Element element);
}
// Element 클래스
public class Element {
public void accept(Visitor visitor) {
visitor.visit(this);
}
}
// ElementVisitor 클래스
public class ElementVisitor implements Visitor {
@Override
public void visit(Element element) {
// 방문한 Element에 대한 처리
System.out.println("방문한 Element의 이름: " + element.getName());
}
}
// 사용 예제
public class Main {
public static void main(String[] args) {
Element element = new Element();
element.setName("테스트 엘리먼트");
ElementVisitor visitor = new ElementVisitor();
element.accept(visitor);
}
}
위의 예제에서, ElementVisitor 클래스는 Visitor 인터페이스를 구현한 객체입니다. accept 메서드는 Element 객체를 인자로 받아, ElementVisitor 객체의 visit 메서드를 호출하여 Element 객체에 대한 처리를 수행합니다.
2025-07-27 02:07