vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
SEPA-Dateien erstellen inkl. IBAN-, BLZ-/Kontonummernprüfung  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2024
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

VB.NET - Ein- und Umsteiger
Re: Wann werden Shared Klassenattribute initialisiert? 
Autor: ModeratorDaveS (Moderator)
Datum: 22.08.12 09:40

Shared Fields werden initialisiert spätestens wenn die Klasse das erste Mal verwendet wird. Es gibt übrigens auch Shared New().

Du kannst selbst prüfen was wirklich passiert mit solchem Code

    Class t1
        Public Sub New()
            Debug.WriteLine("t1 new")
        End Sub
 
        Public Sub t1sub()
            Debug.WriteLine("t1sub")
        End Sub
    End Class
 
    Class cTest
        Public Shared rnd As New t1
 
        Shared Sub New()
            Debug.WriteLine("cTest Shared New")
        End Sub
 
        Public Sub New()
            Debug.WriteLine("cTest New")
        End Sub
    End Class
 
    Private Sub Test()
        Debug.WriteLine("start")
 
        Dim ctest As New cTest()
        Debug.WriteLine("mid")
        ctest.rnd.t1sub()
 
        Debug.WriteLine("end")
    End Sub
Was da rauskommt ist
  start
  t1 new
  cTest Shared New
  cTest New
  mid
  t1sub
  end
Ohne ein Klassenobjekt anzulegen und einfach das Shared-Objekt zu benutzen sieht's dann so aus
  start
  t1 new
  cTest Shared New
  t1sub
  end

________
Alle Angaben ohne Gewähr. Keine Haftung für Vorschläge, Tipps oder sonstige Hilfe, falls es schiefgeht, nur Zeit verschwendet oder man sonst nicht zufrieden ist

alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
Wann werden Shared Klassenattribute initialisiert?1.189Ryo22.08.12 08:30
Re: Wann werden Shared Klassenattribute initialisiert?747ModeratorDaveS22.08.12 09:40
Re: Wann werden Shared Klassenattribute initialisiert?812Ryo22.08.12 10:09

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2024 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel