Herencia en C#

class Inheritance{
	static void Main(string[] args){
		Son s = new Son();
		s.Greet();
	}
}

class Father{
	public void Greet(){
		Console.WriteLine("Hola");
	}
}

class Son : Father{}

Es el mecanismo mediante el cual una clase deriva de otra, de manera que extiende su funcionalidad.

Constructores y herencia

class ConstructorsAndInheritage{
	static void Main(string[] args){
		Son s = new Son(); 
	}
}

class Father{
	public Father(){
		Console.WriteLine("Father is executed");
	}
}

class Son : Father{
	public Son(){
		Console.WriteLine("Son is executed");
	}
}

Output:
Se ejecuta el padre
Se ejecuta el hijo

¿Qué se verá por pantalla al ejecutar el siguiente código?

class WhatWillHappen{
	static void Main(string[] args){
		Son h = new Son("Hello!");
		h.ShowMessage(); 
	}
}

class Father{
	string message;
	public Father(string message){
		this.message = message;
	}
	public void ShowMessage(){
		Console.WriteLine(message);
	}
}

class Son : Father{
	public Son(string message):base(message){ }
}

Ejercicio

Desarrolle una aplicación que contenga las siguientes clases:

Herencia en C# 1

El constructor de la clase Persona debe incrementar en una unidad la variable numInstancias.

Desarrolle una clase con el nombre MainClass, que contenga un método public static void main(String args[]), que al ejecutarse cree dos instancias de empleado y dos de cliente e imprima el total de instancias de persona creadas.

Ejercicio – animales

Implemente las clases del siguiente diagrama.

Herencia en C# 2

Desarrolle una clase con el nombre Main, que contenga un método static void main(String args[]), que al ejecutarse genere una instancia de Vaca, Cerdo y Gallina pasándoles en el constructor el sonido que deben emitir (“muuuuuu”, “oinkoink”, “kokoroko”, por ejemplo). Sobreescribir comunicarse de cada clase para que cada una muestre un mensaje distinto (puede ser algo del tipo )

Console.WriteLine("Cuando la vaca pone tiene leche hace " + sonido);

Llamar a los métodos comunicarse() de cada una de las tres instancias.

← Constructores en C#
Polimorfismo en C# →

Aviso Legal | Política de privacidad