Select Page

Adapter

Adapter

Convert the interface of a class into another interface clients expect. Adapter lets classes work together that couldn’t otherwise because of incompatible interfaces.

Source Code

/**  * Defines an existing interface that needs adapting  *   * @role __Adaptee  */ public class Adaptee { 	/* Some adaptee-specific behavior */ 	public void specificRequest() { 		// some adaptee specific stuff is going here 	} }  /**  * This class adapts the interface of Adaptee to the Target interface  */  public class Adapter extends Target { 	/** reference to the object being adapted */ 	private Adaptee adaptee;  	/** 	 * @param adaptMe 	 *            class to adapt whis this adapter 	 */ 	public Adapter(Adaptee adaptMe) { 		this.adaptee = adaptMe; 	}  	/** 	 * Implementation of target method that uses adaptee to perform task 	 */ 	public void request() { 		adaptee.specificRequest(); 	}  }  /**  * This class defines domain-specific interface used by client  *   * @role __Target  */  public abstract class Target { 	/** This method is called by client when he needs some domain-specific stuff */ 	public abstract void request(); } 
0 0 votes
Article Rating
Subscribe
Notify of
0 Comments
Inline Feedbacks
View all comments

Categories

0
Would love your thoughts, please comment.x
()
x