コード例 #1
0
ファイル: Program.cs プロジェクト: RedMoonPie/coursecsh_adv
        public static void Main(string[] args)
        {
            //Arreglos de interfaces lo unico que podrian tener en comun es la implementacion de interfaz por ejemplo Ctelevisor y Cradio
            IElectronico[] teles = { new CTelevisor("charp"), new CTelevisor("Zony"), new CRadio("RCB"), new CTelevisor("philips") };

            foreach (IElectronico aparato  in teles)
            {
                Console.WriteLine(aparato);
            }
            Console.WriteLine("-------------------------");



            //uso de interfaces con metodos
            CTelevisor miTV   = new CTelevisor("Sharp tv");
            CRadio     mRadio = new CRadio("Sony Walk man");

            Muestra(miTV);
            Muestra(mRadio);



            Console.WriteLine("-------------------------");

            IElectronico aparatocreado = null;

            aparatocreado = CreaAparato();
            aparatocreado.Encender(true);
            Console.WriteLine(aparatocreado);
        }
コード例 #2
0
ファイル: Program.cs プロジェクト: RedMoonPie/coursecsh_adv
        //Este metodo regresa o bien un tv o un radio, aprovechando el polimorfismo que nos brindan las interfaces
        static IElectronico CreaAparato()
        {
            IElectronico aparato = null;

            string dato   = string.Empty;
            int    opcion = 0;

            Console.WriteLine("Que deseas crear? 1-Tele  -2-Radio ");
            dato   = Console.ReadLine();
            opcion = Convert.ToInt32(dato);

            if (opcion == 1)
            {
                Console.WriteLine("Dame la marca de la tele");
                dato    = Console.ReadLine();
                aparato = new CTelevisor(dato);
            }
            if (opcion == 2)
            {
                Console.WriteLine("Dame la marca de la radio");
                dato    = Console.ReadLine();
                aparato = new CRadio(dato);
            }
            return(aparato);
        }