Programación Orientada a Objetos, Polimorfismo en C# [75]

  • Pili= muchas, Morfismo= formas, osea Polimorfismo = muchas formas
  • En programación orientada a objetos, el polimorfismo se refiere a la propiedad por la que es posible enviar mensajes sintácticamente iguales a objetos de tipos distintos. El único requisito que deben cumplir los objetos que se utilizan de manera polimórfica es saber responder al mensaje que se les envía.
    En este tutorial vamos hacer los siguiente:
  • Crear una clase llamada Carro con los atributos matricula, marca, modelo y un método que muestre los datos del auto.
  • Crear la clase TipoTurismo que hereda de Carro sus atributo mas el atributo propio numeroPuertas, ademas crearemos un método que muestre todos sus datos.
  • Crear la clase TipoFurgoneta que hereda de Carro sus atributo mas el atributo propio carga, ademas crearemos un método que muestre todos sus datos.
  • Crear la clase TipoDeportivo que hereda de Carro sus atributo mas el atributo propio cilindros, además crearemos un método que muestre todos sus datos.
  • En la clase principal crear un arreglo del objeto Carro donde llamaremos los diferentes tipos de clses de tipo Carro

Codigo: https://github.com/programadornovato/-CURSO–C-/commit/2f60cdcb28c7857ddc04d4e9bbf79e442db809d5

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace HolaMundo
{
    class Carro
    {
        private string matricula;
        private string marca;
        private string modelo;
        public Carro(string _matricula, string _marca, string _modelo) {
            matricula = _matricula;
            marca = _marca;
            modelo = _modelo;
        }
        public string getMatricula() {
            return matricula;
        }
        public string getMarca() {
            return marca;
        }
        public string getModelo() {
            return modelo;
        }
        virtual public string retornarDatos() {
            return "matricula=" + matricula + " marca=" + marca + " modelo=" + modelo;
        }
    }
}
using System;
using System.Collections;
using System.Windows.Forms;
using Microsoft.VisualBasic;
/*
Autor: Programador novato
Fecha: 01/01/2021
Este programa hace que los novatos aprenden a hacer
un codigo bonito y ya
*/
namespace HolaMundo
{
    class Program
    {
        static void Main(string[] args)
        {
            Carro[] c = new Carro[4];
            c[0] = new Carro("CARRO01","Nissan","2010");
            c[1] = new tipoDeportivo("DEPORT01","Nissan","2012",8);
            c[2] = new TipoTurismo("TUR01","Nissan","2015",4);
            c[3] = new tipoFurgoneta("FUR01","Nissan","2018",500);
            for (int i = 0; i < 4; i++)
            {
                Console.WriteLine(c[i].retornarDatos());
            }
            Console.Read();
        }
    }
}
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace HolaMundo
{
    class tipoDeportivo:Carro
    {
        private int cilindros;
        public tipoDeportivo(string _matricula, string _marca, string _modelo, int _cilindros)
        : base(_matricula, _marca, _modelo)
        {
            cilindros = _cilindros;
        }
        override public string retornarDatos()
        {
            return "matricula=" + getMatricula() + " marca=" + getMarca() + " modelo=" + getModelo() + " cilindros=" + cilindros;
        }

    }
}
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace HolaMundo
{
    class TipoTurismo:Carro
    {
        private int numeroPuertas;
        public TipoTurismo(string _matricula, string _marca, string _modelo,int _numeroPuertas)
        :base(_matricula, _marca, _modelo)
        {
            numeroPuertas = _numeroPuertas;
        }
        override public string retornarDatos()
        {
            return "matricula=" + getMatricula() + " marca=" + getMarca() + " modelo=" + getModelo()+ " numeroPuertas="+ numeroPuertas;
        }

    }
}

🎦 [CURSO] C#: https://www.youtube.com/watch?v=NKPMGY6NCko&list=PLCTD_CpMeEKQSOU8Vf9VHXrZa2rc8X0X5&ab_channel=programadornovato
🎦 [CURSO] C++ DE 0 A HEROE 🦸: https://www.youtube.com/watch?v=APN8aCyPvww&list=PLCTD_CpMeEKTofxs7iottRxJ5YPM7BOcc&ab_channel=programadornovato
🎦 [Curso] Java Netbeans Completo☕: https://www.youtube.com/watch?v=97nO4-zdviA&list=PLCTD_CpMeEKTT-qEHGqZH3fkBgXH4GOTF&ab_channel=programadornovato

🔗 Canal de ProgramadorNovato: https://www.youtube.com/c/programadornovato
🔗 Facebook: https://facebook.com/ProgramadorNovatoOficial
🔗 Twitter: https://twitter.com/programadornova
🔗 Linkedin: https://www.linkedin.com/in/programadornovato/
🔗 Instagram: https://www.instagram.com/programadornovato/
🔗 Pagina oficial: https://www.programadornovato.com
🔗 Gracias por apoyar este canal: https://www.patreon.com/programadornovato

Deja un comentario

Tu dirección de correo electrónico no será publicada.