工厂方法设计模式

工厂方法设计模式

 

工厂方法是针对每一种产品提供一个工厂类。通过不同的工厂实例来创建不同的产品实例。

在同一等级结构中,支持增加任意产品。

工厂方法 :用来生产同一等级结构中的固定产品。(支持增加任意产品)

代码

demo 01

package two.frist;

public interface Sample {
       public void method();
}

package two.frist;

public class SampleA implements Sample {

 @Override
 public void method() {
  // TODO Auto-generated method stub
  System.out.println("SampleAaaaaa");
 }
}

package two.frist;

public class SampleB implements Sample {

 @Override
 public void method() {
  // TODO Auto-generated method stub
  System.out.println("SampleBbbbbbb");
 }
}

package two.frist;

public class SampleC implements Sample {

 @Override
 public void method() {
  // TODO Auto-generated method stub
  System.out.println("SampleCcccccccccccc");
 }
}

 

package two.frist;

/**
 * 工厂方法
 *
 * @author xxg
 *
 */
public class Factory {
 public static Sample creator(int which) {
  Sample sample = null;
  // getClass 产生Sample 一般可使用动态类装载装入类。
  if (which == 1) {
   sample = new SampleA();
  } else if (which == 2) {
   sample = new SampleB();
  } else if (which == 3) {
   sample = new SampleC();
  }
  return sample;
 }
}

 

package two.frist;

public class Test {

 /**
  * 工厂方法测试
  *
  * @param args
  */
 public static void main(String[] args) {
  Sample sampleA = Factory.creator(1);
  sampleA.method();
  Sample sampleB = Factory.creator(2);
  sampleB.method();
  Sample sampleC = Factory.creator(3);
  sampleC.method();
 }
}

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值