ファクトリパターンは作成パターンです
クラス図
ファクトリクラスを通じて条件付きで対応するオブジェクトを作成します
//业务功能 public interface ICalculation { double getResult(double numA, double numB); }
public class CalcAdd implements ICalculation { @Override public double getResult(double numA, double numB) { System.out.println("加法"); return numA + numB; } }
public class CalcSubtract implements ICalculation { @Override public double getResult(double numA, double numB) { System.out.println("减法"); return numA - numB; } }
シンプルファクトリの欠点: シンプルファクトリはプロダクトを作成する際、対応するパラメータを渡す必要があります。パスが間違っていると、オブジェクトを取得できません。
改善: さまざまな製品を作成するための複数のメソッド
クラス図
/* * 简单工厂模式 关注:对象的创建 * 建立一个工厂类,对实现了同一接口的或者是存在继承关系的一些类进行实例的创建 */ public class Test4Simple { public static void main(String[] args) { // String operation = "/"; String operation = "+"; // String operation = "-"; // String operation = "*"; double numA = 182, numB = 33; ICalculation createCalc = CalcSimpleFactory.createCalc(operation); double result = createCalc.getResult(numA, numB); System.out.println(result); } }
public class CalcMultipleFactory { public static ICalculation produceAdd() { return new CalcAdd(); } public static ICalculation produceSubtract() { return new CalcSubtract(); } public static ICalculation produceMultiply() { return new CalcMultiply(); } public static ICalculation producepide() { return new Calcpide(); } }
以上がJavaで簡単なファクトリパターンを実装するサンプルコード(写真)の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。