Comme il a été dit dans une récente question et réponse, vous ne pouvez pas hériter d'une classe statique. Comment faire respecter les règles qui vont de pair avec les classes statiques à l'intérieur VB.NET? Car le cadre est compatible avec C# et VB, il serait logique qu'il y aurait un moyen de marquer une classe statique, mais il ne semble pas y avoir un moyen.
Réponses
Trop de publicités?Module == classe statique
Si vous voulez juste une classe dont vous ne pouvez pas hériter, utilisez une classe NotInheritable. Mais ce ne sera pas statique / partagé. Vous pouvez marquer toutes les méthodes, propriétés et membres comme partagés, mais ce n'est pas strictement la même chose qu'une classe statique en C # car elle n'est pas appliquée par le compilateur.
Si vous voulez vraiment l'équivalent vb.net d'une classe statique C #, utilisez un module. Il ne peut pas être hérité et tous les membres, propriétés et méthodes sont statiques / partagés.
Presque là. Vous devez également empêcher l'instanciation.
NotInheritable Class MyStaticClass
''' <summary>
''' Prevent instantiation.
''' </summary>
Private Sub New()
End Sub
Public Shared Function MyMethod() As String
End Sub
End Class
- Shared est comme une méthode de classe statique.
- NotInheritable est comme scellé.
- Private New est comme une classe statique ne peut pas être instanciée.
See ... MSDN - Classes statiques et membres de classes statiques
Vous pouvez créer une classe statique dans vb.net. La solution est
Friend NotInheritable Class DB
Public Shared AGE As Integer = 20
End Class
La variable AGE est publique statique, vous pouvez l'utiliser dans un autre code comme celui-ci
Dim myage As Integer = DB.AGE
Friend = public, NotInheritable = statique