一、
二、具体实现
1,
代理对象类:商城
接口:进货、卖货
被代理类:卖衣服的、卖书的、卖吃的
2,代码实现
接口-被代理的行为-交易
被代理类-商家
代理类-商城
交易者
二、具体实现
1,
代理对象类:商城
接口:进货、卖货
被代理类:卖衣服的、卖书的、卖吃的
2,代码实现
接口-被代理的行为-交易
public interface ITrade{
public void sale();
public void purchase();
}
被代理类-商家
public class ClothingStore implements ITrade{
public void sale(){
System.out.println("i was selling clothes ");
}
public void purchase(){
System.out.println("i was buying clothes");
}
}
public class FoodStore implements ITrade{
//进货小吃
//出售小吃
}
public class BookStore() implements ITrade{
//进书
//卖书
}
代理类-商城
public class Store implements ITrade{
private ITrade trade;
public Store(){
//商城的本家是卖书的
this.trade=new SaleBook();
}
public Store(ITrade trade){
this.trade=trade;
}
/**
*代理实现
*/
public void sale(){
this.trade.sale();
}
public void purchase(){
this.trade.purchase();
}
}
交易者
public class Swapper{
public static void main(String args[]){
//交易书--进入商城然后交易
//代理-商城默认代理的是书
Store bs=new Store();
bs.sale();
bs.purchase();
//交易食品
//出现食品卖家,加入商城(被其代理),交易
FoodStore fs=new FoodStore();
Store fss=new Store(fs);
fss.sale();
fss.purchase();
}
}