JAVA设计模式-工厂模式

工厂模式主要有四个角色。
1.工厂使用者(Client):使用工厂类创建相应产品。
2.工厂(Factory):通过接收对应的型号(type)去创建对应的产品(Product)
3.产品(Product):接口,定义了这种类型的产品具有的相同特性。
4.具体产品(Specific Product):具体产品类,实现产品接口共有特性的不同值和特有属性。

下面图表有些问题,Product接口定义的内容有误。。。具体看实现代码吧。。



public class Client {
        /**
        * @param args
        */
        public static void main(String[] args) {
               // TODO Auto-generated method stub
              Factory factory = new Factory();
              factory.createProduct(1).showAttributes();
              factory.createProduct(2).showAttributes();
       }
}

public class Factory {
        public Product createProduct( int type) {
              Product product = null ;
               if (type == 1) {
                     product = new SpecificProduct1( "产品1特有属性" );
              } else if (type == 2) {
                     product = new SpecificProduct2( "产品2特有属性" );
              }
               return product;
       }
}

public interface Product {
        void showAttributes();
}

public class SpecificProduct1 implements Product {
        private String attributes ;
        public SpecificProduct1(String attributes) {
               this . attributes = attributes;
       }
        @Override
        public void showAttributes() {
               // TODO Auto-generated method stub
              System. out .println( "产品1,属性:" + attributes );
       }
}

public class SpecificProduct2 implements Product {
        private String attributes ;
        public SpecificProduct2(String attributes) {
               this . attributes = attributes;
       }
        @Override
        public void showAttributes() {
               // TODO Auto-generated method stub
              System. out .println( "产品2,属性:" + attributes );
       }
}



猜你喜欢

转载自blog.csdn.net/leochen_/article/details/74377581