Exemple #1
0
    public static void Main(String[] args)
    {
        MallardDuck mallard = new MallardDuck();

        mallard.display();
        mallard.perfomFly();
        mallard.perfomQuack();
        Console.ReadKey();
    }
Exemple #2
0
        static void Main(string[] args)
        {
            Model.Duck duck = new DecoyDuck();

            //pato de decoração
            Console.WriteLine("Comportamentos de um pato de decoração");
            Console.WriteLine("Vôo: {0}", duck.perfomFly());
            Console.WriteLine("Grasnar: {0}", duck.performQuack());
            Console.WriteLine();

            //pato Mallard
            duck = new MallardDuck();
            Console.WriteLine("Comportamentos de um pato Mallard");
            Console.WriteLine("Vôo: {0}", duck.perfomFly());
            Console.WriteLine("Grasnar: {0}", duck.performQuack());
            Console.WriteLine();

            //pato modelo
            duck = new ModelDuck();
            Console.WriteLine("Comportamentos de um pato modelo");
            Console.WriteLine("Vôo: {0}", duck.perfomFly());
            Console.WriteLine("Grasnar: {0}", duck.performQuack());
            Console.WriteLine();

            Console.WriteLine("Mudando o comportamento do pato modelo em tempo de execução");
            Console.WriteLine();

            duck.alterarQuackBehavior(new Squeak());
            duck.alterarFlyBehavior(new FlyRocketPowered());
            Console.WriteLine("Comportamentos de um pato modelo alterado");
            Console.WriteLine("Vôo: {0}", duck.perfomFly());
            Console.WriteLine("Grasnar: {0}", duck.performQuack());



            Console.WriteLine();

            Console.ReadKey();
        }