抽象工廠設計模式

 

 

/**
 * 園丁
 */
public interface Gardener {
}

 

/**
 *  北方園丁
 */
public class NorthernGardener implements Gardener {

    public Fruit createFruit(String name) {
        return new NorthernFruit(name);//生產北方水果
    }

    public Veggie createVeggie(String name) {
        return new NorthernVeggie(name);//生產北方蔬菜
    }
}

 

/**
 * 南方園丁
 */
public class TropicalGardener implements Gardener {

    public Fruit createFruit(String name) {
        return new TropicalFruit(name);//生產南方水果
    }

    public Veggie createVeggie(String name) {
        return new TropicalVeggie(name );//生產南方蔬菜
    }
}

 

/**
 * 水果
 */
public interface Fruit {
    
}

 

/**
 * 北方水果
 */
public class NorthernFruit implements Fruit {

    private String name;
    public NorthernFruit(String name){
        
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
}

 

/**
 * 南方水果
 */
public class TropicalFruit implements Fruit {

    public TropicalFruit(String name){
        
    }
    private String name;
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
}

 

/**
 * 蔬菜
 */
public interface Veggie {

}

 

/**
 * 北方蔬菜
 */
public class NorthernVeggie implements Veggie {
    
    private String name;
    public NorthernVeggie(String name){
        
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
}

 

/**
 * 南方蔬菜
 */
public class TropicalVeggie implements Veggie {

    public TropicalVeggie(String name){
        
    }
    private String name;
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
}

   

發佈了45 篇原創文章 · 獲贊 0 · 訪問量 1455
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章