同樣是《大話設計模式》的例子,簡單計算器的例子。
運算類:
package 簡單計算器;
public class operating
public void setresult(double result)
public double getfirstnum()
public void setfirstnum(double firstnum)
public double getsecondnum()
public void setsecondnum(double secondnum)
}
工廠類:
package 簡單計算器;
public inte***ce ioperatingfactory
加法運算類:
public class operatingadd extends operating
}
減法運算類:
package 簡單計算器;
public class operatingsub extends operating
}
乘法運算類:
package 簡單計算器;
public class operatingmul extends operating
}
除法運算類:
package 簡單計算器;
public class operatingdiv extends operatingcatch(exception e)
return result; }
}
加法工廠類:
package 簡單計算器;
public class addfactory implements ioperatingfactory
}
減法工廠類:
package 簡單計算器;
public class subfactory implements ioperatingfactory
}
乘法工廠類:
package 簡單計算器;
public class mulfactory implements ioperatingfactory
}
除法工廠類:
package 簡單計算器;
public class divfactory implements ioperatingfactory
}
執行類:
package 簡單計算器;
public class run
}
2 工廠方法模式
1.說明 請參見 簡單工廠模式 此處略。2.工廠方法模式說明 工廠方法模式 定義了乙個用於建立物件的介面,讓子類決定例項化哪乙個類,使得類的例項化延遲到其子類。3.與簡單工廠模式比較 1.簡單工廠模式可以根據傳入條件生成多個產品,而工廠方法模式每個工廠只生產乙個產品,所以需要多個工廠。2.簡單工廠是...
2 工廠方法模式
定義 定義乙個用於建立物件的介面,讓子類決定例項化哪乙個類。工廠方法使乙個類的例項化延遲到其子類。需要新增新功能時,由改工廠類變成了修改客戶端。優點 克服了簡單工廠的違背開放 封閉原則的缺點。又保持了封裝物件建立過程的優點。降低了客戶端與產品物件的耦合。是簡單工廠模式的進一步抽象和推廣。由於使用了多...
工廠方法模式 2
定義 定義乙個用於建立物件的介面,讓子類決定例項化哪乙個類,工廠方法使乙個類的例項化延遲到其子類。型別 建立類模式 類圖 工廠方法模式 inte ce iproduct class product implements iproduct inte ce ifactory class factory ...