Conforme declarado em uma pergunta e resposta recente , você não pode herdar de uma classe estática. Como alguém impõe as regras que acompanham as classes estáticas dentro do VB.NET? Como a estrutura é compatível entre C # e VB, faria sentido haver uma maneira de marcar uma classe como estática, mas não parece haver uma maneira.
85
Quase lá. Você também deve evitar a instanciação.
NotInheritable Class MyStaticClass ''' <summary> ''' Prevent instantiation. ''' </summary> Private Sub New() End Sub Public Shared Function MyMethod() As String End Function End Class
Consulte:
MSDN - Classes estáticas e membros de classes estáticas
fonte
Se você deseja apenas criar uma classe que não pode herdar, em C # você pode usar Sealed, e em VB.Net usar NotInheritable.
O equivalente VB.Net de estático é compartilhado.
fonte
Você pode criar uma classe estática em vb.net. A solução é
Friend NotInheritable Class DB Public Shared AGE As Integer = 20 End Class
A variável AGE é public static, você pode usá-la em outro código como este
Dim myage As Integer = DB.AGE
Friend = public, NotInheritable = static
fonte
Do ponto de vista do CLR, a classe estática C # é apenas uma classe "selada" e "abstrata". Você não pode criar uma instância, porque ela é abstrata, e você não pode herdar dela, pois está lacrada. O resto é apenas uma mágica do compilador.
fonte