コード例 #1
0
        public static IProduct GetProduct(RoomParts part)
        {
            IFactory factory = null;
            switch (part)
            {
                case RoomParts.Roof:
                    factory = new RoofFactory();
                    break;
                case RoomParts.Window:
                    factory = new WindowFactory();
                    break;
                case RoomParts.Pillar:
                    factory = new PillarFactory();
                    break;
                default:
                    return null;

            }
            IProduct product = factory.Produce();
            Console.WriteLine("生产了一个产品:{0}", product.GetName());
            return product;
        }