アダプタモード


アダプタモードは、クラスのアダプタモードとオブジェクトのアダプタモードに分けられます.クラスのアダプタモードは継承方式で実現され,オブジェクトのアダプタモードは組合せ方式で実現される.
Javaオブジェクト向けでは、複数の組合せを推奨し、継承を少なくします.両者の違いはまだ多いです.たとえば、組合せは実行期間で決定され、コンパイラで決定されます.組合せは松結合,継承は緊縮結合などである.もちろん具体的なシーンは具体的に分析しなければなりません.
アダプタモードの使用シーンは,システムが既存のクラスを使用する必要があるが,ユーザや他のニーズを完全に満たすことができず,できるだけ変更しないようにすると,このモードが役立ち,多重化効果が得られる.
次のコードがあります.
クラスAdapteeは、多重化が必要なクラスを表すアダプターです.
インタフェースTargetはターゲットクラスであり、実現する必要がある機能である.
クラスアダプタはアダプタクラスです
/**
 *     	 
 */
public class Adaptee {

	public Adaptee(){
	}
	
	public void eat(){
		System.out.println("eat...");
	}
	
}
/**
 *    
 */
public interface Target {
	
	public void eat();
	
	public void sleep();
}
/**
 *     
 */
public class Adaptor implements Target	{

	private Adaptee adaptee;
	public Adaptor(Adaptee adaptee){
		this.adaptee = adaptee;
	}

	@Override
	public void eat() {
		adaptee.eat();
	}

	@Override
	public void sleep() {
		System.out.println("sleep...");
	}
	
}