Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Inkonsistente Barrierefreiheit: Die Basisklasse "Class1" ist weniger zugänglich als die Klasse "Class2".
In C# kann eine abgeleitete Klasse keine breitere Zugänglichkeit als ihre Basisklasse aufweisen. Wenn die Basisklasse weniger zugänglich ist, können Verbraucher der abgeleiteten Klasse unbeabsichtigt Zugriff auf eine Klasse erhalten, die sie nicht sehen sollten.
Unterklassen können niemals leichter zugänglich sein als ihre Basisklassen. Dies würde den Verbrauchern der Unterklasse einen breiteren Zugriff auf den Basistyp ermöglichen, als beabsichtigt.
Das folgende Beispiel erzeugt CS0060, da Class1internal ist und Class2public ist.
internal class Class1
{
}
public class Class2 : Class1 // 🛑 CS0060: Class1 is less accessible
{
}
Sie können CS0060 auf eine von zwei Arten auflösen:
- Machen Sie die Basisklasse zugänglicher: Ändern Sie
Class1so, dass espublicist. - Einschränken Sie die Zugriffsberechtigung der abgeleiteten Klasse: Ändern Sie
Class2, uminternalzu sein.
Tipp
Basisklassen können zugänglicher sein als ihre Unterklassen, aber nie weniger zugänglich.