一:利用抽象工厂建造一个加减乘除运算器:
下面是具体的代码实现:
Cal抽象方法:
package com.hbc.factory;public abstract class Cal { public abstract int getResult(int a, int b);}
Add:
package com.hbc.factory;public class Add extends Cal{ @Override public int getResult(int a, int b) { return a + b; }}
Sub:
package com.hbc.factory;public class Sub extends Cal{ @Override public int getResult(int a, int b) { return a - b; }}
Mul:
package com.hbc.factory;public class Mul extends Cal{ @Override public int getResult(int a, int b) { return a * b; }}
Div:
package com.hbc.factory;public class Div extends Cal{ @Override public int getResult(int a, int b) { return a / b; }}
Operation:这个类是具体操作,以及测试:
package com.hbc.factory;import java.util.Scanner;public class Operation{ public static Cal getCal(char c){ Cal cal = null; switch(c){ case '+': cal = new Add(); break; case '-': cal = new Sub(); break; case '*': cal = new Mul(); break; case '/': cal = new Div(); break; default: System.out.println("不好意思,您输入的操作有误"); } return cal; } public static void main(String[] args) { System.out.println("请输入您要进行的操作"); Scanner cin = new Scanner(System.in); while(cin.hasNext()){ String op = cin.next(); Cal cal = getCal(op.charAt(0)); System.out.println("请输入您要操作的数字"); int a = cin.nextInt(); int b = cin.nextInt(); System.out.println("计算的结果是: " + cal.getResult(a, b)); System.out.println("请输入您要进行的操作"); } }}
二.使用抽象工厂模式实现电子商务系统的数据访问层功能。