Commonlife's Blog

My daily life

Posts Tagged ‘design pattern

Adapter Pattern

leave a comment »

1. 상속을 사용한 Adapter Pattern

 AdapterPattern_01
PrintBanner extends Banner implements Print 로 Banner 클래스를 상속하고, Print 인터페이스를 구현한다.
 
1) 실제 기능 구현은 Banner 클래스에 한다.
2) PrintBanner는 구현된 Banner 클래스를 상속하고, 호출되어 사용될 수 있도록 Print 인터페이스를 구현한다.
3) 사용할 땐 Print 인터페이스의 method들을 호출하여 Banner 클래스의 method들이 작동되게 한다.
 
PrintBanner의 method들을 보면 아래와 같이 Banner클래스의 method를 호출하는 Print 인터페이스 method를 구현한다.
public void printWeak(){
    showWithParen();
}
 
public void printStrong(){
    showWithAster();
}
 
그럼 사용을 할 땐
Print print = new PrintBanner()로 생성한 후 print.printWeak(), print.printStrong()으로 사용한다.
 
 
 
 

2. 위임을 이용한 Adapter Pattern

 
AdapterPattern_02
PrintBanner extends Print 로 Print 클래스를 상속하고, Banner 클래스를 멤버변수로 선언한다.
 
1) 실제 기능 구현은 Banner 클래스에 한다.
2) PrintBanner는 Banner를 멤버변수로 선언한다.
3) PrintBanner의 method들은 Banner 클래스의 method들을 호출한다.
3) 사용할 땐 Print 클래스의 method들을 호출하여 Banner 클래스의 method들이 작동되게 한다.

Written by tocommonlife

2013/07/13 at 23:36