728x90
어댑터 패턴
호환되지 않는 클래스를 호환 가능하도록 변환해주는 역할의 클래스를 생성하는 방법이다.
기존 클래스의 수정 없이 어댑터 클래스를 추가해줌으로 재사용성을 높여주는 방법이다.
(ex. 220v를 110v로 변환, 3극 이어폰 단자를 4극으로 변환하는 등 기존 제품을 변형하지 않고 어댑터를 추가해 다른 기기와 호환성을 높인다)
어댑터 클래스 사용 예
220V 제품을 110V 콘센트에 연결할 수 있도록 어댑터 클래스를 만들었다.
1. 어댑터는 110V 콘센트의 구현체로 만들어 110V와 호환이 가능하게 만든다.
2. 생성자를 통해 어댑터에 220V 제품을 객체를 만들어준다.
3. 그리고 110V 콘센트에 연결하는 메서드(connect)를 오버라이딩하여 220V 제품 연결 메서드로 만든다.
public class Adapter implements Socket110V{
private Socket220V socket220V;
//220V 제품에 어댑터를 장착한다
public Adapter(Socket220V socket220V){
this.socket220V = socket220V;
}
//어댑터를 장착한 220V 제품을 110V 콘센트에 연결한다
@Override
public void connect() {
socket220V.connect();
}
}
728x90
'개발공부 > Java' 카테고리의 다른 글
| [Java] Stack 구현해보기 (0) | 2023.04.11 |
|---|---|
| [디자인패턴] 싱글톤 패턴(Singleton pattern) (0) | 2023.03.31 |