首页 > 其他 > 详细

03.创建型————抽象工厂模式

时间:2016-01-02 22:20:08      阅读:283      评论:0      收藏:0      [点我收藏+]
package Create.c.AbstractFactory;

//业务接口
public interface Salary {
	void calcSalary();
}

  

package Create.c.AbstractFactory;

//业务接口
public interface Tax {
	void calcTax();
}

  

package Create.c.AbstractFactory;

//业务实现类
public class HeBeiTax implements Tax {

	@Override
	public void calcTax() {
		// TODO Auto-generated method stub
		System.out.println("开始计算河北子公司的税收!");
	}

}

  

package Create.c.AbstractFactory;

//业务实现类
public class HeBeiSalary implements Salary {

	@Override
	public void calcSalary() {
		// TODO Auto-generated method stub
		System.out.println("开始计算河北子公司的薪资!");
	}

}

  

package Create.c.AbstractFactory;

//业务实现类
public class GuangDongTax implements Tax {

	@Override
	public void calcTax() {
		// TODO Auto-generated method stub
		System.out.println("开始计算广东子公司的税收!");
	}

}

  

package Create.c.AbstractFactory;


//业务实现类
public class GuangDongSalary implements Salary {

	@Override
	public void calcSalary() {
		// TODO Auto-generated method stub
		System.out.println("开始计算广东子公司的薪资!");
	}

}

  

package Create.c.AbstractFactory;

//工厂接口
public interface Factory {
  Salary createSalary();
  Tax createTax();
}

  

package Create.c.AbstractFactory;

//业务实现类工厂类
public class HeBeiFactory implements Factory {

	@Override
	public Salary createSalary() {
		// TODO Auto-generated method stub
		return new HeBeiSalary();
	}

	@Override
	public Tax createTax() {
		// TODO Auto-generated method stub
		return new HeBeiTax();
	}

}

  

package Create.c.AbstractFactory;


//业务实现类工厂类
public class GuangDongFactory implements Factory {

	@Override
	public Salary createSalary() {
		// TODO Auto-generated method stub
		return new GuangDongSalary();
	}

	@Override
	public Tax createTax() {
		// TODO Auto-generated method stub
		return new GuangDongTax();
	}

}

  

package Create.c.AbstractFactory;


//业务调用类
public class Client {
public static void main(String[] args) {
	Factory fa = new GuangDongFactory();
	Salary sa = fa.createSalary();
	Tax tax =  fa.createTax();
	sa.calcSalary();
	tax.calcTax();
	
	fa = new HeBeiFactory();
	sa = fa.createSalary();
	tax =fa.createTax();
	sa.calcSalary();
	tax.calcTax();
	
	
}
}

  

03.创建型————抽象工厂模式

原文:http://www.cnblogs.com/ciade/p/5095284.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!