La classe '<nomeclasse>' non dispone di 'Sub New' accessibili e non può essere ereditata

Aggiornamento: novembre 2007

Class '<classname>' has no accessible 'Sub New' and cannot be inherited

Una classe utilizza Istruzione Inherits per specificare una classe base, ma non può accedere ad alcun costruttore nella classe base desiderata.

Questa eventualità può verificarsi se la classe base desiderata non dispone di costruttori o se dispone di costruttori con livelli di accesso che impediscono l'accesso da un'altra classe.

Quando si eredita una classe, il costruttore deve chiamare il costruttore della classe base utilizzando MyBase. Se non si effettua questa chiamata o se non si scrive un costruttore esplicito, Visual Basic genera un costruttore implicito che chiama MyBase.New().

ID errore: BC31399

Per correggere l'errore

  1. Se è possibile accedere al codice sorgente della classe base stabilita, modificare il livello di accesso di almeno uno dei costruttori in modo che un'altra classe possa accedervi.

  2. Se non è possibile modificare i livelli di accesso dei costruttori della classe base stabilita, allora ereditare da un'altra classe o non ereditare affatto.

Vedere anche

Concetti

Nozioni fondamentali sull'ereditarietà

Livelli di accesso in Visual Basic

Riferimenti

Istruzione Inherits

MyBase

New (Visual Basic)