public static Carro montarCarro(string tipo)
        {
            CarroAbstractFactory carroAbstractFactory = null;

            switch (tipo)
            {
            case "Popular":
                carroAbstractFactory = new CarroPopularFactory();
                break;

            case "Luxo":
                carroAbstractFactory = new CarroLuxoFactory();
                break;

            default:
                break;
            }

            Carro carro = new Carro();

            carro.roda = carroAbstractFactory.montarRoda();
            carro.som  = carroAbstractFactory.montarSom();
            return(carro);
        }
Ejemplo n.º 2
0
        public static Carro FabricarCarro(string modelo)
        {
            CarroFactory cf = null;

            switch (modelo)
            {
            case "popular":
                cf = new CarroPopularFactory();
                break;

            case "luxo":
                cf = new CarroLuxoFactory();
                break;

            default:
                return(null);
            }

            Carro carro = new Carro();

            carro.roda = cf.montarRoda();
            carro.som  = cf.montarSom();
            return(carro);
        }