b2科目四模拟试题多少题驾考考爆了怎么补救
b2科目四模拟试题多少题 驾考考爆了怎么补救

Java设计模式编程中简单工厂和抽象工厂模式的用例

电脑杂谈  发布时间:2020-04-23 16:26:46  来源:网络整理

工厂模式 uml类图_抽象工厂模式 类图_工厂模式类图

简单的工厂模式

类图

通过工厂类创建具有条件的对应对象

工厂模式 uml类图_工厂模式类图_抽象工厂模式 类图

//业务功能 
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); 
  } 
} 

简单工厂缺陷: 当简单工厂创建产品时工厂模式类图,您需要传递相应的参数. 如果交付不正确,您将不会得到物品.

改进: 创建不同产品的多种方法

抽象工厂模式 类图_工厂模式类图_工厂模式 uml类图

类图

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 produceDivide() { 
    return new CalcDivide(); 
  } 
} 
public class Test4Multiple { 
 
  public static void main(String[] args) { 
    double numA = 182, numB = 33; 
     
    ICalculation createCalc = CalcMultipleFactory.produceAdd(); 
    double result = createCalc.getResult(numA, numB); 
    System.out.println(result); 
     
    createCalc = CalcMultipleFactory.produceSubtract(); 
    result = createCalc.getResult(numA, numB); 
    System.out.println(result); 
     
    createCalc = CalcMultipleFactory.produceMultiply(); 
    result = createCalc.getResult(numA, numB); 
    System.out.println(result); 
     
    createCalc = CalcMultipleFactory.produceDivide(); 
    result = createCalc.getResult(numA, numB); 
    System.out.println(result); 
  } 
} 

抽象工厂模式

工厂模式 uml类图_抽象工厂模式 类图_工厂模式类图

有几个概念: 抽象工厂工厂模式类图,物理工厂,抽象产品,物理产品

抽象工厂: 定义用于创建产品的抽象方法

物理工厂: 专门创建哪种产品

工厂模式类图_抽象工厂模式 类图_工厂模式 uml类图

抽象产品: 接口或基类

物理产品: 实现特定功能或派生

类图


本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/jisuanjixue/article-186154-1.html

    相关阅读
      发表评论  请自觉遵守互联网相关的政策法规,严禁发布、暴力、反动的言论

      热点图片
      拼命载入中...