1、简单工厂模式

最近重拾设计模式看了看,给自己总结一下!大家也瞧瞧

首先简单工厂模式.

可以理解为将一组对象的共性抽象出来一个抽象类作为父类.
假设A1,B1,C1三个类,将他们的共同行为,共同属性提取出来!
抽象出一个抽象类带一个抽象方法.
public abstract class Operation {
	//定义2个变量
	private double _numberA=0;
	private double _numberB=0;
	
	
	public double get_numberA() {
		return _numberA;
	}
	public void set_numberA(double numberA) {
		_numberA = numberA;
	}
	public double get_numberB() {
		return _numberB;
	}
	public void set_numberB(double numberB) {
		_numberB = numberB;
	}
	
	//定义抽象,方便子类重写
	public abstract double GetResult() throws Exception;
}

将A1....都继承这个抽象类(继承当然要重写抽象方法)
public class OperationAdd extends Operation {
	//加法运算类,继承操作类!重写方法
	@Override
	public double GetResult() {
		return super.get_numberA()+super.get_numberB();
	}

}

现在做工厂类
public class OperationFactory {
	public static Operation createOperate(String op) {
		//这里定义oper为一个抽象类
		Operation oper = null;
		
		//以下为工厂
		if (op.equals("+")) {
			oper = new OperationAdd();
		} else if (op.equals("-")) {
			oper = new OperationSub();
		} else if (op.equals("*")) {
			oper = new OperationMul();
		} else if (op.equals("/")) {
			oper = new OperationDiv();
		}
		
		return oper;
	}
}

设计模式的目的无非是降低耦合,代码重用,方便维护扩展

猜你喜欢

转载自zcw-java.iteye.com/blog/1190405