bekam ich etwas verwirrt, wie der folgende Code funktioniertWarum kann ich die Equals-Methode überschreiben, wenn meine Klasse nichts erbt?
public class DefaultClass
{
public override bool Equals(object obj)
{
return base.Equals(obj);
}
}
Meine Frage ist: Ich bin nicht jede Klasse vererben, aber wie kann ich Equals Methode noch in der Lage zu überschreiben. Dieser Code wird in VS2010 perfekt kompiliert. Irgendeine Idee, wie das funktioniert?
_ "wenn meine Klasse von etwas erbt nicht?" _ Sie sind auf dem falschen Weg, weil ([fast] (http: // blogs. msdn.com/b/ericlippert/archive/2009/08/06/not-everything-der-from-object.aspx)) jede Klasse erbt von 'Object'. –
@TimSchmelter: Schließen - jede Klasse * erbt * von 'Objekt'. Dinge wie Schnittstellen und Zeiger erben nicht, weil sie keine Klassen sind. – Gabe
@Gabe: Ja, Klasse mit Typ ersetzen und _nearly_ ist richtig. Aber nicht nur Klassen, sondern auch Typen wie "struct" oder "enum" leiten sich aus dem Objekt ab. –