Statische Methodenimplementierung in VB.NET

8

Ich bin verwirrt mit Static Implementierung in VB.NET. In C # können wir statische Klassen- und statische Methoden zum Schreiben von Hilfsmethoden für unsere Anwendung erstellen.

Nun können wir mit VB.NET Module anstelle der statischen Klasse erstellen. Wenn wir eine Methode im Modul erstellen, wird sie standardmäßig statisch. Aber in meiner Bewerbung habe ich den folgenden Code geschrieben:

%Vor%

Indem ich den Code schreibe, kann ich auf die Hilfsmethode als Utility.GetValue() zugreifen. Da dies keine statische Klasse ist, soll ich ein Objekt davon instantiieren. Diese Methode ist jedoch sowohl für die Klasse als auch für die Objekte von Utility

verfügbar

Jetzt sind meine Fragen:

  1. Kann die Implementierung, die ich getan habe, gegen irgendwelche Eigenschaften der statischen Klasse dieses Moduls verstoßen?
  2. Was ist der Unterschied zwischen diesem und der Implementierung eines Moduls?
  3. Wenn ich stattdessen ein Modul erstelle, wird der Geltungsbereich der Klasse gleich sein? Ich möchte auf die Methode während des gesamten Projekts sowie auf andere Projekte zugreifen, auf die verwiesen wird.

Ich habe versucht, mehrere Artikel zu konsultieren, aber nirgendwo diese genauen Antworten gefunden. Bitte helfen.

    
Atanu Roy 24.06.2015, 16:44
quelle

1 Antwort

16

Ein VB.NET-Modul ist eine statische Klasse. Der Compiler erledigt dies für Sie. Jede Methode und Eigenschaft ist static ( Shared ).

Eine Klasse mit einem statischen (Shared) Mitglied ist genau das: Eine Klasse mit einem statischen (Shared) Mitglied. Sie müssen keine Instanz für den Zugriff auf die statische (Shared) -Methode erstellen, aber Sie müssen zu einem der Instanzmitglieder gelangen.

Sie können auch ein Sub New() in einem Modul definieren und es wird zum statischen Konstruktor für das Modul. Wenn Sie das erste Mal versuchen, ein Member auf dem Modul aufzurufen, wird der statische Konstruktor aufgerufen, um die statische Klasse zu initialisieren.

    
Mike Hofer 24.06.2015, 16:53
quelle

Tags und Links