静态方法工厂模式
工廠模式有三種方法來實現,一種是通過傳入參數的名稱來決定創建哪一個產品,這種方法有很大的缺點,就是如果傳入的產品名稱如果不小心錯誤的話,就是無法來創建我們想得到的產品的。另一種是方法工廠模式,這種工廠模式中對應每一個產品有一個創建方法,這樣創建了工廠實例以后,直接通過工廠實例就可以調用相應的產品的創建方法來創建我們需要的產品。但是這種工廠模式需要創建工廠實例,一個工廠可能使用的地方有很多,一直創建實例不好,所以就有了靜態方法工廠模式。
package mode.factory.static_method_factory;/*** * 抽象的水果類(一個工廠,生產的肯定是某一類相同的產品,我們這里就是一個水果加工廠)* * */ public interface Fruit {/* 水果都可以吃的 */public void eat(); }
下面是兩個水果類的具體實現:
package mode.factory.static_method_factory;public class Apple implements Fruit {@Overridepublic void eat() {System.out.println("吃蘋果");}}package mode.factory.static_method_factory;public class Orange implements Fruit {@Overridepublic void eat() {System.out.println("吃橘子");}}
有了這兩種水果以后我們就可以創建我們的工廠,來生產這些水果了。 package mode.factory.static_method_factory;public class FruitFactory {/* 蘋果生產線 */public static Fruit getApple() {return new Apple();}/* 橘子生產線 */public static Fruit getOrange() {return new Orange();} }
工廠投產了,生產出的產品直接試吃看看; package mode.factory.static_method_factory;public class Test {public static void main(String[] args) {FruitFactory.getApple().eat();FruitFactory.getOrange().eat();} }
總結
- 上一篇: 朴素Bayse新闻分类实践
- 下一篇: 蓝桥杯历届试题----分糖果(模拟)