em c# Na programação orientada ao objeto, geralmente é definido na classe base e esses métodos são reescritos ou redefinidos na classe derivada. Embora as palavras -chave "virtuais" e "novas" possam ser usadas para modificar a declaração do método, elas têm diferentes métodos de implementação.
reescrita Dirtual
O método declarado na classe base como "virtual", indicando que as subclasses podem ser reescritas.
declare um novo método de mesmo nome que o método chinês da fundação na classe derivada.
Ocultar o método básico e criar uma nova implementação na classe derivada.base de classe pública {{ public virtual bool Dosomething () {return false;} } Classe Pública Derivada: Base: Base {{ Public Substitua bool Dosomething () {return true;} }
;base a = new Derived (); a.dosomething ();
public class Base
{
public virtual bool DoSomething() { return false; }
}
public class Derived : Base
{
public override bool DoSomething() { return true; }
}
Base a = new Derived();
a.DoSomething(); // 返回 true
use a reescrita virtual para herdar e expandir comportamentos, mantendo a cadeia de herança.
use o novo para criar uma nova implementação independente, destruindo assim a cadeia de herança.
Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.
Copyright© 2022 湘ICP备2022001581号-3