Как указано в недавнем question и , вы не можете наследовать от статический класс. Как применять правила, которые соответствуют статическим классам внутри VB.NET? Поскольку структура совместима между С# и VB, было бы разумно, что существует способ отметить статический класс, но, похоже, не существует способа.
Маркировка класса Static в VB.NET
Ответ 1
Модуль == статический класс
Если вам нужен класс, который вы не можете унаследовать, используйте класс NotInheritable; но это не будет статичным /Shared. Вы можете пометить все методы, свойства и члены как Shared, но это не совсем то же самое, что статический класс в С#, так как он не применяется компилятором.
Если вы действительно хотите, чтобы VB.Net соответствовал статическому классу С#, используйте Module. Он не может быть унаследован, и все члены, свойства и методы являются статическими/общими.
Ответ 2
Почти готово. Вы также должны предотвратить создание экземпляров.
NotInheritable Class MyStaticClass
    ''' <summary>
    ''' Prevent instantiation.
    ''' </summary>
    Private Sub New()
    End Sub
    Public Shared Function MyMethod() As String
    End Function
End Class
- Shared - это метод статического класса.
 - NotInheritable это как запечатанный.
 - Private New, как статический класс, не может быть создан.
 
Ответ 3
Если вы просто хотите создать класс, который вы не можете наследовать, в С# вы можете использовать Sealed, а в VB.Net используйте NotInheritable.
Эквивалент VB.Net статики является общим.
Ответ 4
Вы можете создать статический класс в vb.net. Решение
Friend NotInheritable Class DB
    Public Shared AGE As Integer = 20
End Class
AGE variable является общедоступной, вы можете использовать ее в другом коде, как это показано
 Dim myage As Integer = DB.AGE
Друг = общедоступный, NotInheritable = статический
Ответ 5
С точки зрения CLR, статический класс С# является просто "запечатанным" и "абстрактным" классом. Вы не можете создать экземпляр, потому что он абстрактный, и вы не можете наследовать его, поскольку он запечатан. Остальное - это просто магия компилятора.
Ответ 6
Я думаю, что эквивалент VB.NET static равен Shared.