English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
In diesem Beispiel werden wir lernen, wie man in Java privaten Konstruktor implementiert.
Um diesen Beispiel zu verstehen, sollten Sie die folgendenJava-ProgrammierungThema:
class Test { //Erstellen Sie privaten Konstruktor private Test() { System.out.println("Das ist ein privater Konstruktor."); } //Erstellen Sie eine öffentliche statische Methode public static void instanceMethod() { //Erstellen Sie eine Instanz der Klasse Test Test obj = new Test(); } } class Main { public static void main(String[] args) { //Aufruf von instanceMethod() Test.instanceMethod(); } }
Ausgabeergebnis
Das ist ein privater Konstruktor.
Im obigen Beispiel haben wir den privaten Konstruktor der Klasse Test erstellt. Daher können wir keine Objekte dieser Klasse außerhalb der Klasse Test erstellen.
Das ist der Grund, warum wir eine öffentliche statische Methode namens instanceMethod() in der Klasse erstellt haben, die zum Erstellen von Objekten der Klasse Test verwendet wird. In der Klasse Main rufen wir diese Methode mit dem Klassennamen auf.
Das Java Singleton-Designmuster stellt sicher, dass eine Klasse nur eine Instanz hat. Dafür verwenden wir den privaten Konstruktor.
class Language { //Erstellen Sie eine öffentliche statische Variable des Typs Klasse private static Language language; //Privater Konstruktor private Language() { System.out.println("Intern privater Konstruktor"); } //Öffentliche statische Methode public static Language getInstance() { //Erstellen Sie ein Objekt (wenn es noch nicht erstellt wurde) if(language == null) { language = new Language(); } //Rückgabe des Singleton-Objekts return language; } public void display() { System.out.println("Implementiert das Singleton-Muster"); } } class Main { public static void main(String[] args) { Language db1; //Rufen Sie die Methode getInstance auf db1= Language.getInstance(); db1.display(); } }
Ausgabeergebnis
Intern privater Konstruktor Implementiert das Singleton-Muster
Im obigen Beispiel haben wir eine Klasse namens Languages erstellt. Diese Klasse enthält:
language - Klassentyp private Variable
Language() - private Konstruktor
getInstance() - public static Klasse Methode
display() - public Methode
Da der Konstruktor privat ist, können wir keine Language-Objekte von außen der Klasse erstellen. Daher erstellen wir im getInstance() Methode das Objekt dieser Klasse.
aber wir haben die Bedingung so gesetzt, dass nur ein Objekt erstellt wird. Und dieser Methode wird ein Objekt zurückgegeben.
Beachten Sie diese Zeile,
db1 = Language.getInstance();
Hier,
db1 ist eine Variable des Typs Language
Language.getInstance() - Methode aufrufen getInstance()
Da getInstance() ein Objekt der Language-Klasse zurückgibt, ist db1Die Variable wurde dem zurückgegebenen Objekt zugewiesen.
Schließlich haben wir die display() Methode mit einem Objekt aufgerufen.