<Typ typename> nemůže dědit z typu vnořeného do něj.

Definice třídy nebo rozhraní obsahuje příkaz Inherits , který určuje typ vnořený do něj.

Dědičnost musí být lineární, ne kruhová. Typ nemůže dědit z typu, který z něj dědí.

Související omezení spočívá v tom, že typ nemůže dědit z typu, který ještě není definován. Dědičnost zahrnuje schopnost opakovaně používat členy základní třídy, což zase vyžaduje, aby tyto členy byly definovány. Jazyk Visual Basic proto nemůže zkompilovat kód, například následující příklad.

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  

ID chyby: BC30908

Oprava této chyby

  • Pokud musí dědění typu (vnější typ v vnoření) dědit z vnitřního typu, přesuňte vnitřní typ ven z vnějšího typu.

  • Pokud musí být vnitřní typ vnořený do vnějšího typu, nemůže z něj vnější typ dědit. Odeberte příkaz Inherits.

Viz také