Programma Java per implementare costruttori privati

In questo esempio, impareremo a implementare costruttori privati ​​in Java.

Per comprendere questo esempio, è necessario conoscere i seguenti argomenti di programmazione Java:

  • Costruttori Java
  • Java Singleton

Esempio 1: programma Java per creare un costruttore privato

 class Test ( // create private constructor private Test () ( System.out.println("This is a private constructor."); ) // create a public static method public static void instanceMethod() ( // create an instance of Test class Test obj = new Test(); ) ) class Main ( public static void main(String() args) ( // call the instanceMethod() Test.instanceMethod(); ) )

Produzione

 Questo è un costruttore privato.

Nell'esempio precedente, abbiamo creato un costruttore privato della Testclasse. Quindi, non possiamo creare un oggetto della Testclasse al di fuori della classe.

Questo è il motivo per cui abbiamo creato un public staticmetodo denominato instanceMethod()all'interno della classe che viene utilizzato per creare un oggetto della classe Test. E dalla Mainclasse, chiamiamo il metodo usando il nome della classe.

Esempio 2: progettazione Java Singleton utilizzando un costruttore privato

Il modello di progettazione Java Singleton garantisce che dovrebbe essere presente una sola istanza di una classe. Per ottenere ciò utilizziamo il costruttore privato.

 class Language ( // create a public static variable of class type private static Language language; // private constructor private Language() ( System.out.println("Inside Private Constructor"); ) // public static method public static Language getInstance() ( // create object if it's not already created if(language == null) ( language = new Language(); ) // returns the singleton object return language; ) public void display() ( System.out.println("Singleton Pattern is achieved"); ) ) class Main ( public static void main(String() args) ( Language db1; // call the getInstance method db1= Language.getInstance(); db1.display(); ) )

Produzione

 Inside Private Constructor Singleton Pattern è stato realizzato

Nell'esempio precedente, abbiamo creato una classe denominata Languages. La classe contiene,

  • lingua - privatevariabile del tipo di classe
  • Language () - privatecostruttore
  • getInstance () - public staticmetodo del tipo di classe
  • display () - publicmetodo

Poiché il costruttore è private, non possiamo creare oggetti di Language dalla classe esterna. Quindi, abbiamo creato un oggetto della classe all'interno del getInstance()metodo.

Tuttavia, abbiamo impostato la condizione in modo tale che venga creato un solo oggetto. E il metodo restituisce l'oggetto.

Notare la linea,

 db1 = Language.getInstance();

Qui,

  • db1 è una variabile di tipo Language
  • Language.getInstance () : chiama il metodogetInstance()

Poiché, getInstance()restituisce l'oggetto della classe Language, la variabile db1 viene assegnata con l'oggetto restituito.

Infine, abbiamo chiamato il display()metodo utilizzando l'oggetto.

Articoli interessanti...