标签:
一、大致结构(其模式主要是具体的产品有对应的具体工厂)
1、抽象工厂类
2、抽象产品类
3、具体工厂类
4、具体产品类
二、代码
1、抽象工厂类
Factory.java
package com.factory; public interface Factory { Fruit createFruit(); }
2、抽象产品类
package com.factory; public interface Fruit { public void grow(); }
3、具体产品类Apple.java与Orangle.java
package com.factory; public class Apple implements Fruit { @Override public void grow() { System.out.println("我真在成长......"); } }
package com.factory; public class Orangle implements Fruit { @Override public void grow() { System.out.println("grow......"); } }
4、具体工厂类AppleFactory与OrangleFactory.java
package com.factory; public class AppleFactory implements Factory { @Override public Fruit createFruit() { return new Apple(); } }
package com.factory; public class OrangleFactory implements Factory { @Override public Fruit createFruit() { return new Orangle(); } }
5、测试类Test.java
package com.factory; public class Test { public static void main(String[] args) { Fruit apple = new AppleFactory().createFruit(); Fruit orangle = new OrangleFactory().createFruit(); apple.grow(); orangle.grow(); } }
标签:
原文地址:http://www.cnblogs.com/honger/p/5958778.html