Delen via


Het type '<typenaam>' kan niet worden overgenomen van een type dat erin is genest

Een klasse- of interfacedefinitie bevat een overname-instructie waarmee een type wordt opgegeven dat erin is genest.

Overname moet lineair zijn, niet cirkelvormig. Een type kan niet worden overgenomen van een type dat ermee wordt overgenomen.

Een gerelateerde beperking is dat een type niet kan overnemen van een type dat nog niet is gedefinieerd. Overname omvat de mogelijkheid om leden van de basisklasse opnieuw te gebruiken, wat op zijn beurt vereist dat deze leden worden gedefinieerd. Visual Basic kan daarom geen code compileren, zoals het volgende voorbeeld.

Public Class outerClass  
    ' The following statement is INVALID because innerClass is not defined.  
    Inherits innerClass  
    Public Class innerClass  
        Public Sub doSomething()  
        End Sub  
    End Class  
End Class  

Fout-id: BC30908

Deze fout corrigeren

  • Als het overnemende type (het buitenste type in het nesten) moet overnemen van het binnenste type, verplaatst u het binnenste type buiten het buitenste type.

  • Als het binnenste type moet worden genest binnen het buitenste type, kan het buitenste type het niet overnemen. Verwijder de overname-instructie.

Zie ook