Adapter패턴은 한마디로 요약하면 변환하는 역활을 하는 것입니다.
즉, 이미 존재하는 코드를 다른 용도로 사용할 수 있도록 변환해 주는 용도입니다. 이렇게 함으로써 얻는 이점은 사용자는 Adaptee클래스의 코드를 몰라도 그 기능을 사용할 수 있다는 것입니다.
Target t = new Adapter(); //Target의 메소드를 이용한다라는 것을 보여주기 위해
t.targetMethod1();
t.targetMethod2();
Adapter패턴은 클래스에 의한 Adapter패턴과 인스턴스에 의한 Adapter패턴이 있습니다.
Adapter클래스은 Adaptee클래스의 기능들을 Target에서 사용하도록 구현해주는 클래스이다.
위 방식은 첫번째 방식과 연결 방법만 다릅니다.
Adaptee를 의존성주입으로 연결하고 Target클래스가 인터페이스가 아닌 클래스로 바뀌게 됩니다.
코드: https://github.com/lawijdo201/Design-Pattern
출처: Java 언어로 배우는 디자인 패턴 입문