Différence entre les nouveaux et les remplacer

Vous vous demandez quelle est la différence entre la suivante:

Cas 1: La Classe De Base

public void DoIt();

Cas 1: classe Héritée

public new void DoIt();

Cas 2: La Classe De Base

public virtual void DoIt();

Cas 2: classe Héritée

public override void DoIt();

Les deux cas 1 et 2 semblent avoir le même effet sur la base des essais, j'ai couru. Est-il une différence, ou d'une manière préférée?

Double de nombreuses questions, y compris stackoverflow.com/questions/159978/...

OriginalL'auteur Shiraz Bhaiji | 2009-09-09