Auf Englisch lesen

Freigeben über


Die Klasse „<classname>“ hat kein zugreifbares „Sub New“ und kann nicht geerbt werden.

Eine Klasse verwendet eine Inherits Statement , um eine Basisklasse anzugeben, kann jedoch auf keinen Konstruktor in der beabsichtigten Basisklasse zugreifen.

Dies kann geschehen, wenn die beabsichtigte Basisklasse keine Konstruktoren oder Konstruktoren mit Zugriffsebenen aufweist, die den Zugriff von einer anderen Klasse verhindern.

Wenn Sie eine Klasse erben, sollte Ihr Konstruktor den Basisklassenkonstruktor mit MyBaseaufrufen. Wenn Sie diesen Aufruf nicht ausführen oder auch keinen expliziten Konstruktor schreiben, generiert Visual Basic einen impliziten Konstruktor, der MyBase.New()aufruft.

Fehler-ID: BC31399

So beheben Sie diesen Fehler

  1. Wenn die beabsichtigte Basisklasse der Quellcodeverwaltung unterliegt, ändern Sie die Zugriffsebene mindestens eines ihrer Konstruktoren, damit eine andere Klasse darauf zugreifen kann.

  2. Wenn Sie die Zugriffsebenen der Konstruktoren der beabsichtigten Basisklasse nicht ändern können, sollte die Vererbung von einer anderen Klasse oder gar nicht erfolgen.

Siehe auch