Adapter Pattern

Adapter Pattern은 한 클래스의 인터페이스를 사용하고자 하는 다른 인터페이스로 변환하는 것을 의미한다. 어뎁터 패턴을 이용하면 인터페이스 호환성 문제 때문에 같이 사용할 수 없는 클래스들을 같이 쓸 수 있다.

Adapter Pattern은 구조 패턴으로 인터페이스나 구현을 복합하는 것이 아닌, 객체를 합성하는 방법을 제공한다. 이는 컴파일 단계에서가 아닌 런타임 단계에서 복합 방법이나, 대상을 변경할 수 있다는 점에서 유연성을 가진다.

어뎁터 패턴은 Class AdapterObject Adapter 방식이 있다.

  • Class Adapter : 자바 상속(inheritance)을 이용한 방법

  • Object Adapter : 자바 합성(Composite)을 이용한 방법

예제

  • volt 값을 가지고 있는 POJO 클래스

  • Socket : 120 Volt 생성 클래스

  • 120 볼트 외의 추가적으로 3, 12 volt도 추가로 생성하는 어뎁터

  • Class Adapter 방식

  • Object Adapter 방식

  • main

참고

Last updated

Was this helpful?