コード例 #1
0
        static void Main(string[] args)
        {
            Console.WriteLine("Informar o tipo de semáforo que deseja criar. (P / V)");

            Lampada lampada;

            var tipoDeSemaforo = Console.ReadKey();

            if (tipoDeSemaforo.Key == ConsoleKey.V)
            {
                lampada = new LampadaRedonda();
            }
            else if (tipoDeSemaforo.Key == ConsoleKey.P)
            {
                lampada = new LampadaQuadrada();
            }
            else
            {
                throw new InvalidOperationException("Opção inválida.");
            }

            var semaforo = new Semaforo(lampada);

            semaforo.Liga();

            Console.WriteLine("Pressione qualquer tecla para terminar...");

            Console.ReadLine();
        }
コード例 #2
0
 public Atencao(Semaforo semaforo) : base(semaforo, ConsoleColor.Yellow)
 {
 }
コード例 #3
0
 public Prossiga(Semaforo semaforo) : base(semaforo, ConsoleColor.Green)
 {
 }
コード例 #4
0
 public Pare(Semaforo semaforo) : base(semaforo, ConsoleColor.Red)
 {
 }
コード例 #5
0
        public EstadoDoSemaforo(Semaforo semaforo, ConsoleColor cor)
        {
            Semaforo = semaforo;

            Cor = cor;
        }
コード例 #6
0
 public Desligado(Semaforo semaforo) : base(semaforo, ConsoleColor.Black)
 {
 }