Programación Orientada a Objetos Clases y métodos abstractos en C# [73]

Para que una clase sea abstracta debe cumplir las siguientes características:

  • Debe tener por lo menos una clase hijo (osea ser super clase).
  • No puede instanciar objetos.
  • Sirve solo para heredar métodos y atributos.
    Para entender más a fondo las clases abstractas vamos a hacer lo siguiente:
  • Crear la super-clase Automotores que tendrá como hijos a:
    • La clase Gasolina.
      • Tendrá la clase Motocicletas y Autos que tendrá el método llantas que mostrará la cantidad de llantas que usa este automotor
    • La clase Diesel.
      • Tendrá la clase Camiones que tendrá el método llantas que mostrará la cantidad de llantas que usa este automotor.

SUPER-CLASE ABSTRACTA
Automotores (Abstracta)
-llantas()

SUPER-CLASE ABSTRACTA
Gasolina (Abstracta)
-llantas()
CLASES HIJA
Motocicletas
-llantas()
Autos
-llantas()

SUPER-CLASE ABSTRACTA
Diesel (Abstracta)
-llantas()
CLASES HIJA
Camiones
-llantas()

Codigo: https://github.com/programadornovato/-CURSO–C-/commit/138502851c3d8193ad0498b1532e6027c65cea22

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

namespace HolaMundo
{
    abstract class Automotores
    {
        abstract public void llantas();
    }
}
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace HolaMundo
{
    class Autos : Gasolina
    {
        public override void llantas()
        {
            Console.WriteLine("Yo sou un auto y tengo 4 llantas");
        }
    }
}
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace HolaMundo
{
    class Camiones : Diesel
    {
        public override void llantas()
        {
            Console.WriteLine("Yo soy un camion y tengo 8 llanatas");
        }
    }
}
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace HolaMundo
{
    abstract class Diesel:Automotores
    {
    }
}
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace HolaMundo
{
    abstract class Gasolina:Automotores
    {
    }
}
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace HolaMundo
{
    class Motocicletas : Gasolina
    {
        public override void llantas()
        {
            Console.WriteLine("Yo soy una moto y tengo 2 llantas");
        }
    }
}
using System;
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)
        {
            //Automotores a = new Automotores();
            //Gasolina g = new Gasolina();
            Autos a = new Autos();
            a.llantas();
            Camiones c = new Camiones();
            c.llantas();


            Console.Read();
        }
    }
}

🎦 [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.

Salir de la versión móvil