Die Konstruktormethode in Java wird als „class class_name {public class_name(){} public ciass_name([paramList]){} ...// class body}“ geschrieben und die jeweiligen Methodenparameter müssen unterschiedlich sein.
Die Betriebsumgebung dieses Tutorials: Windows7-System, Java8-Version, DELL G3-Computer.
Der Konstruktor ist eine spezielle Methode einer Klasse, die zum Initialisieren eines neuen Objekts der Klasse verwendet wird und automatisch aufgerufen wird, nachdem das Objekt erstellt wurde (neuer Operator). Jede Klasse in Java verfügt über einen Standardkonstruktor und kann mehr als einen Konstruktor haben.
Java-Konstruktor hat die folgenden Eigenschaften:
Der Methodenname muss mit dem Klassennamen identisch sein
kann 0, 1 oder mehr Parameter haben
Kein Rückgabewert, einschließlich void
Der Standardrückgabetyp ist der Objekttyp selbst
kann nur in Verbindung mit dem neuen Operator verwendet werden
Es ist zu beachten, dass, wenn ein Rückgabewerttyp für den Konstruktor definiert ist oder void verwendet wird, um zu deklarieren, dass der Der Konstruktor hat keinen Rückgabewert und wird beim Kompilieren nicht verwendet. Es tritt ein Fehler auf, aber Java behandelt diese sogenannte Konstruktormethode wie eine gewöhnliche Methode.
Zu diesem Zeitpunkt haben Sie möglicherweise Fragen: Hat der Konstruktor keinen Rückgabewert? Warum kann es nicht für nichtig erklärt werden?
Einfach ausgedrückt ist dies die Syntax von Java. Tatsächlich hat der Konstruktor einer Klasse einen Rückgabewert. Wenn das Schlüsselwort new zum Aufrufen des Konstruktors verwendet wird, gibt der Konstruktor eine Instanz dieser Klasse zurück Der Rückgabewert des Konstruktors Der Werttyp ist immer die aktuelle Klasse, und es ist nicht erforderlich, einen Rückgabewerttyp zu definieren. Sie müssen jedoch darauf achten, im Konstruktor nicht return zu verwenden, um ein Objekt der aktuellen Klasse zurückzugeben, da der Rückgabewert des Konstruktors implizit ist.
Hinweis: Konstruktoren können nicht durch Static, Final, Synchronized, Abstract und Native (ähnlich Abstract) geändert werden. Der Konstruktor wird zum Initialisieren eines neuen Objekts verwendet, daher ist es nicht sinnvoll, es mit Static zu ändern. Der Konstruktor kann nicht von Unterklassen geerbt werden, daher ist es sinnlos, ihn mit final und abstract zu ändern. Mehrere Threads erstellen nicht gleichzeitig dasselbe Objekt mit derselben Speicheradresse, sodass keine synchronisierte Änderung erforderlich ist. Wenn Sie außer static und final keine anderen Schlüsselwörter kennen, werden diese später im Tutorial ausführlich erklärt.
Das Syntaxformat der Konstruktormethode lautet wie folgt:
class class_name { public class_name(){} // 默认无参构造方法 public ciass_name([paramList]){} // 定义构造方法 … // 类主体 }
In einer Klasse ist die Methode mit demselben Namen wie die Klasse die Konstruktormethode. Jede Klasse kann über mehrere Konstruktoren verfügen, diese müssen jedoch jeweils unterschiedliche Methodenparameter enthalten.
Beispiel:
Konstruktionsmethoden umfassen hauptsächlich die Parameterlose Konstruktionsmethode und die Parametrisierte Konstruktionsmethode. Das Beispiel lautet wie folgt:
public class MyClass { private int m; // 定义私有变量 MyClass() { // 定义无参的构造方法 m = 0; } MyClass(int m) { // 定义有参的构造方法 this.m = m; } }
Dieses Beispiel definiert zwei Konstruktionsmethoden, nämlich die Parameterlose Konstruktionsmethode und die Parametrisierte Konstruktionsmethode. Das Definieren mehrerer Methoden mit demselben Namen und unterschiedlichen Parametern in einer Klasse wird als Methodenüberladung bezeichnet. Beide Konstruktoren haben denselben Namen wie die Klasse MyClass. Beim Instanziieren der Klasse können verschiedene Konstruktoren zur Initialisierung aufgerufen werden.
Hinweis: Der Konstruktor einer Klasse muss nicht definiert werden. Wenn in einer Klasse kein Konstruktor definiert ist, generiert Java automatisch einen Standardkonstruktor für die Klasse. Der Standardkonstruktor enthält keine Parameter und der Methodenkörper ist leer. Wenn ein oder mehrere Konstruktoren explizit in einer Klasse definiert sind, stellt Java keinen Standardkonstruktor mehr zur Verfügung.
Tipp: Der parameterlose Konstruktor wird auch Nullärkonstruktor genannt. Nur vom Compiler automatisch hinzugefügte Konstruktoren werden als Standardkonstruktoren bezeichnet. Wenn Sie einen Konstruktor ohne Parameter und ohne Inhalt schreiben, wird er nicht als Standardkonstruktor bezeichnet, sondern nur als Nullärkonstruktor. Obwohl es sich nur um eine Substantivdefinition handelt, sollte der Unterschied zwischen den beiden während der Zertifizierungsprüfung unterschieden werden.
Empfehlungen für entsprechende Video-Tutorials: Java-Video-Tutorial
Das obige ist der detaillierte Inhalt vonSo schreiben Sie eine Konstruktormethode in Java. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!