Как только что было сказано в недавнем вопросе и ответе , вы не можете наследовать от статического класса. Как обеспечить соблюдение правил, которые соответствуют статическим классам внутри VB.NET? Поскольку фреймворк совместим между C # и VB, было бы разумно, чтобы был способ пометить класс как статический, но, похоже, способа нет.
85
Почти готово. Вы также должны предотвратить создание экземпляров.
NotInheritable Class MyStaticClass ''' <summary> ''' Prevent instantiation. ''' </summary> Private Sub New() End Sub Public Shared Function MyMethod() As String End Function End Class
См .:
MSDN - Статические классы и члены статических классов.
источник
Если вы просто хотите создать класс, который не можете наследовать, в C # вы можете использовать Sealed, а в VB.Net - NotInheritable.
Общий эквивалент VB.Net static.
источник
Вы можете создать статический класс в vb.net. Решение
Friend NotInheritable Class DB Public Shared AGE As Integer = 20 End Class
Переменная AGE является общедоступной статической, вы можете использовать ее в другом коде, как это
Dim myage As Integer = DB.AGE
Друг = общедоступный, NotInheritable = статический
источник
С точки зрения CLR статический класс C # - это просто «запечатанный» и «абстрактный» класс. Вы не можете создать экземпляр, потому что он абстрактный, и вы не можете наследовать от него, поскольку он запечатан. Остальное - просто волшебство компилятора.
источник