POO

<< Click to Display Table of Contents >>

Navigation:  Outros >

POO

Previous pageReturn to chapter overviewNext page

Diagrama

 

ClassDiagram1

 

Classes.cs

 

using System;

 

namespace Animais

{

    public abstract class Animal { public string GetNome() { return this.ToString().Split('.')[1]; } }

    public interface IVoador { void Voar(); }

 

    public abstract class AvePlanadora : Animal, IVoador

    {

        public void Voar()

        {

            Console.WriteLine(GetNome() + " plana sobre os ventos");

        }

    }

 

    public abstract class VoadorParado : Animal, IVoador

    {

        public void Voar()

        {

            Console.WriteLine(GetNome() + " voa parada sobre a flor");

        }

    }

 

    public abstract class AveNormal : Animal, IVoador

    {

        public void Voar()

        {

            Console.WriteLine(GetNome() + " bate asas e voa normalmente");

        }

    }

 

    public class Aviao: IVoador

    {

        public void Voar()

        {

            Console.WriteLine(ToString().Split('.')[1] + " voa usando turbinas");

        }

    }

 

    public class Condor : AvePlanadora { }

    public class Gaivota : AvePlanadora { } 

    public class Beijaflor : VoadorParado { } 

    public class Mosca : VoadorParado { }

    public class Pombo : AveNormal { }

    public class Pardal : AveNormal { }

}

 

Program.cs

 

using System;

using System.Collections.Generic;

 

namespace Animais

{

    static class Program

    {

        static void Main()

        {

            List<IVoador> voadores = new List<IVoador>();

 

            voadores.Add(new Condor());

            voadores.Add(new Gaivota());

            voadores.Add(new Mosca());

            voadores.Add(new Beijaflor());

            voadores.Add(new Pombo());

            voadores.Add(new Pardal());

            voadores.Add(new Aviao());

 

            foreach (IVoador voador in voadores)

                voador.Voar();

        }

    }

}

 

Saída

 

Condor plana sobre os ventos

Gaivota plana sobre os ventos

Mosca voa parada sobre a flor

Beijaflor voa parada sobre a flor

Pombo bate asas e voa normalmente

Pardal bate asas e voa normalmente

Aviao voa usando turbinas