In C# è la stessa cosa: qualora volessi far eseguire all'
istanza della classe derivata il metodo overridato al modo della classe base, mi basta dichiarare una variabile del tipo della classe base ed eguagliarvi l'istanza della classe derivata:
using System;
class Classe
{
public string nome;
public Classe(string N)
{
nome = N;
}
public void stampaNome()
{
Console.WriteLine("Questo è il metodo della classe base "+nome);
Console.ReadLine();
}
}
class Derivata : Classe
{
public Derivata(string N) : base(N) { }
public void stampaNome()
{
Console.WriteLine("Questo è il metodo della classe derivata " + nome);
Console.ReadLine();
}
}
class CLass1
{
public static void Main()
{
Classe miaClasse=new Classe("Classe base");
Derivata miaDerivata=new Derivata("Classe derivata");
miaClasse.stampaNome();
miaDerivata.stampaNome();
Classe vrb;
vrb = miaDerivata;
vrb.stampaNome();
}
}
Questo è il metodo della classe base Classe base
Questo è il metodo della classe derivata Classe derivata
Questo è il metodo della classe base Classe derivata
Nessun commento:
Posta un commento