Crear Una Clase 'Auto' Con Herencia De 'Vehículo' En C#

En este ejercicio, crearemos una clase "Coche" que hereda de la clase "Vehículo". Esta clase añadirá atributos y métodos específicos relacionados con un coche. La clase "Vehículo" servirá como clase base, conteniendo atributos generales como la velocidad y el consumo de combustible. La clase "Coche" heredará estos atributos y añadirá otros nuevos, como el número de puertas y el tipo de transmisión. También incluirá un método para mostrar los detalles del coche y otro para conducirlo, simulando el movimiento y mostrando su estado.



Grupo

Programación orientada a objetos en C#

Objectivo

- Crear una clase base "Vehículo" con atributos generales como velocidad, consumo de combustible y un método para mostrar sus detalles.
- Crear una clase derivada "Coche" que herede de la clase "Vehículo" y añada atributos como el número de puertas y el tipo de transmisión.
- Implementar un método en la clase "Coche" que simule la conducción del coche y muestre información relevante.
- Crear un programa de prueba que cree un objeto coche, muestre sus detalles y simule la conducción.

Escribir un programa en C# para crear una clase "Coche" que herede de la clase "Vehículo", añadiendo atributos y métodos específicos relacionados con el coche.

Ejemplo de ejercicio en C#

 Copiar código C#
using System;

public class Vehicle
{
    // Vehicle class contains general attributes like speed and fuel efficiency
    public double Speed { get; set; }
    public double FuelEfficiency { get; set; }

    // Constructor to initialize vehicle's attributes
    public Vehicle(double speed, double fuelEfficiency)
    {
        Speed = speed;
        FuelEfficiency = fuelEfficiency;
    }

    // Method to display the details of the vehicle
    public void DisplayDetails()
    {
        Console.WriteLine("Speed: " + Speed + " km/h");
        Console.WriteLine("Fuel Efficiency: " + FuelEfficiency + " km/l");
    }
}

public class Car : Vehicle
{
    // Car class adds specific attributes like the number of doors and transmission type
    public int NumberOfDoors { get; set; }
    public string Transmission { get; set; }

    // Constructor to initialize car-specific attributes, while also calling the base constructor
    public Car(double speed, double fuelEfficiency, int numberOfDoors, string transmission)
        : base(speed, fuelEfficiency)
    {
        NumberOfDoors = numberOfDoors;
        Transmission = transmission;
    }

    // Method to simulate driving the car and display its details
    public void Drive()
    {
        Console.WriteLine("The car is now driving at " + Speed + " km/h.");
    }

    // Method to display the details of the car, including the base vehicle attributes
    public void DisplayCarDetails()
    {
        DisplayDetails(); // Call the base method to display vehicle details
        Console.WriteLine("Number of Doors: " + NumberOfDoors);
        Console.WriteLine("Transmission Type: " + Transmission);
    }
}

class Program
{
    static void Main()
    {
        // Creating a car object and displaying its details
        Car myCar = new Car(150, 15, 4, "Automatic");
        myCar.DisplayCarDetails();

        // Simulating driving the car
        myCar.Drive();
    }
}

 Output

Speed: 150 km/h
Fuel Efficiency: 15 km/l
Number of Doors: 4
Transmission Type: Automatic
The car is now driving at 150 km/h.

Comparte este ejercicio de C#

Practica más ejercicios C# de Programación orientada a objetos en C#

¡Explora nuestro conjunto de ejercicios de práctica de C#! Diseñados específicamente para principiantes, estos ejercicios te ayudarán a desarrollar una sólida comprensión de los fundamentos de C#. Desde variables y tipos de datos hasta estructuras de control y funciones simples, cada ejercicio está diseñado para desafiarte gradualmente a medida que adquieres confianza en la programación en C#..