`
zsk_china
  • 浏览: 25078 次
  • 性别: Icon_minigender_1
  • 来自: 大连
文章分类
社区版块
存档分类
最新评论

设计模式:简单工厂

阅读更多
简单工厂就是把if-else语句放到了Factory中,代码如下:
package com.zsk.pattern.simpleFactory;

public interface Mobile {
	
	public void prepare();
	public void box();
	public void sell();
}
package com.zsk.pattern.simpleFactory;

public class GSM implements Mobile {

	@Override
	public void prepare() {
		System.out.println("prepare GSM phone");

	}

	@Override
	public void box() {
		System.out.println("box  GSM phone");

	}

	@Override
	public void sell() {
		System.out.println("sell GSM phone");
	}
	

}
package com.zsk.pattern.simpleFactory;

public class CDMA implements Mobile {

	@Override
	public void prepare() {
		System.out.println("prepare CDMA phone");

	}

	@Override
	public void box() {
		System.out.println("box  CDMA phone");

	}

	@Override
	public void sell() {
		System.out.println("sell  CDMA phone");
	}
	

}
package com.zsk.pattern.simpleFactory;

public class MobileFactory {

	public Mobile CreateMobile(String kind)
	{
		if("CDMA".equals(kind))
		{
			return new CDMA();
		}
		else if("GSM".equals(kind))
		{
			return new GSM();
		}
		else
		{
			return null;			
		}
		
	}
}
package com.zsk.pattern.simpleFactory;

public class TestSimpleFactory {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		MobileFactory mobileFactory = new MobileFactory();
		Mobile mobile = mobileFactory.CreateMobile("CDMA");
		mobile.prepare();
		mobile.box();
		mobile.sell();

	}
}


1
2
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics