Heim >Java >javaLernprogramm >Konstrukteur
1) Was ist ein Konstruktor?
---> In Java ist ein Konstruktor ein Codeblock, der der Methode ähnelt. Es wird aufgerufen, wenn eine Instanz der Klasse erstellt wird. Zum Zeitpunkt des Aufrufs des Konstruktors wird Speicher für das Objekt im Speicher zugewiesen.
---> Es handelt sich um einen speziellen Methodentyp, der zum Initialisieren des Objekts verwendet wird.
---> Jedes Mal, wenn ein Objekt mit dem Schlüsselwort new erstellt wird, wird mindestens ein Konstruktor aufgerufen.
---> Es ruft einen Standardkonstruktor auf, wenn in der Klasse kein Konstruktor verfügbar ist. In einem solchen Fall stellt der Java-Compiler standardmäßig einen Standardkonstruktor bereit.
Es gibt folgende Regeln zum Definieren eines Konstruktors:
2) Arten von Konstruktoren
In Java gibt es drei Arten von Konstruktoren:
1. Standardkonstruktor in Java
Ein Konstruktor, der keine Parameter hat, wird als Standardkonstruktor bezeichnet. Ein Standardkonstruktor ist unsichtbar. Und wenn wir einen Konstruktor ohne Argumente schreiben, erstellt der Compiler keinen Standardkonstruktor. Es wird herausgenommen. Es wird überladen und als parametrisierter Konstruktor bezeichnet. Der Standardkonstruktor wurde in den parametrisierten Konstruktor geändert. Der parametrisierte Konstruktor kann den Standardkonstruktor jedoch nicht ändern. Der Standardkonstruktor kann implizit oder explizit sein.
Impliziter Standardkonstruktor: Wenn in einer Klasse kein Konstruktor definiert ist, stellt der Java-Compiler automatisch einen Standardkonstruktor bereit. Dieser Konstruktor akzeptiert keine Parameter und initialisiert das Objekt mit Standardwerten, z. B. 0 für Zahlen, null für Objekte.
Expliziter Standardkonstruktor: Wenn wir einen Konstruktor definieren, der keine Parameter akzeptiert, wird er als expliziter Standardkonstruktor bezeichnet. Dieser Konstruktor ersetzt denjenigen, den der Compiler normalerweise automatisch erstellen würde. Sobald Sie einen Konstruktor (mit oder ohne Parameter) definieren, stellt der Compiler nicht mehr den Standardkonstruktor für Sie bereit.
2. Parametrisierter Konstruktor in Java
Ein Konstruktor, der über Parameter verfügt, wird als parametrisierter Konstruktor bezeichnet. Wenn wir Felder der Klasse mit unseren eigenen Werten initialisieren möchten, verwenden wir einen parametrisierten Konstruktor.
3. Konstruktor in Java kopieren [TBD]
Im Gegensatz zu anderen Konstruktoren wird der Kopierkonstruktor mit einem anderen Objekt übergeben, das die vom übergebenen Objekt verfügbaren Daten in das neu erstellte Objekt kopiert.
3) Was ist Konstruktorüberladung?
Die Konstruktorüberladung kann als das Konzept definiert werden, mehr als einen Konstruktor mit unterschiedlichen Parametern zu haben, sodass jeder Konstruktor eine andere Aufgabe ausführen kann.
Java unterstützt zusätzlich zu den Überladungsmethoden auch das Konstruktorüberladen. In Java wird ein überladener Konstruktor basierend auf den angegebenen Parametern aufgerufen, wenn ein neuer Befehl ausgeführt wird. Manchmal ist es erforderlich, ein Objekt auf unterschiedliche Weise zu initialisieren. Dies kann durch Konstruktorüberladung erfolgen.
4) Wozu dient das Schlüsselwort „dieses“?
Das Schlüsselwort „this“ bezieht sich auf das aktuelle Objekt in einer Methode oder einem Konstruktor.
Die häufigste Verwendung des Schlüsselworts „this“ besteht darin, die Verwechslung zwischen Klassenattributen und Parametern mit demselben Namen zu beseitigen (da ein Klassenattribut durch eine Methode oder einen Konstruktorparameter überschattet wird).
„this“ kann auch verwendet werden für:
Referenz
https://www.javatpoint.com/java-constructor
https://www.geeksforgeeks.org/constructors-in-java/
https://www.javatpoint.com/constructor-overloading-in-java
https://www.geeksforgeeks.org/constructor-overloading-java/
https://www.w3schools.com/java/ref_keyword_this.asp
Das obige ist der detaillierte Inhalt vonKonstrukteur. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!