2010-09-30 11 views

Antwort

11

Statische Konstruktor wird das erste Mal Ihre Klasse namens dh

MyClass.SomeStaticMethod() 

Instanzkonstruktors verwiesen wird, wird jedes Mal, wenn Sie tun ‚MyClass dummy = new MyClass()‘, dh schaffen Instanz der Klasse

semantisch zum ersten Mal verwendet wird aufgerufen, wenn Sie Möchten Sie sicherstellen, dass ein statischer Status initialisiert wird, bevor auf ihn zugegriffen wird, wird der andere zum Initialisieren von Instanzmembern verwendet.

1

Der statische Konstruktor wird nur einmal für alle Instanzen oder Verwendungen der Klasse ausgeführt. Es wird ausgeführt, wenn Sie die Klasse das erste Mal verwenden. Normale Konstruktoren werden ausgeführt, wenn Sie ein Objekt der Klasse instanziieren.

Alles, was Sie benötigen, sollten über statische Konstrukteure wissen, sind hier zu finden: http://msdn.microsoft.com/en-us/library/k9x6w0hc(v=VS.100).aspx

5

Statische Konstruktoren können Sie statische Variablen in einer Klasse initialisieren, oder andere Dinge tun musste in einer Klasse tun, nachdem sie zuerst verwiesen ist in dein Code. Sie werden nur einmal bei jedem Programmstart aufgerufen.

Statische Konstruktoren werden mit dieser Syntax deklariert und kann nicht überlastet sein oder alle Parameter haben, weil sie laufen, wenn Ihre Klasse durch seinen Namen verwiesen wird:

static MyClass() 
{ 
} 

Instanzkonstruktoren sind diejenigen, die aufgerufen werden, wenn Sie erstellen neue Objekte (Instanzen von Klassen). Sie sind auch diejenigen, die Sie normalerweise in Java und den meisten anderen objektorientierten Sprachen verwenden.

Sie verwenden diese, um Ihren neuen Objekten ihren Anfangszustand zu geben. Diese können überlastet werden und können Parameter übernehmen:

public MyClass(int someNumber) : this(someNumber, 0) {} 

public MyClass(int someNumber, int someOtherNumber) 
{ 
    this.someNumber = someNumber; 
    this.someOtherNumber = someOtherNumber; 
} 

Telefonvorwahl:

MyClass myObject = new MyClass(100, 5); 
Verwandte Themen