Java program za izvajanje zasebnih konstruktorjev

V tem primeru se bomo naučili izvajati zasebne konstruktorje v Javi.

Če želite razumeti ta primer, morate poznati naslednje programske teme Java:

  • Java Constructors
  • Java Singleton

Primer 1: Program Java za ustvarjanje zasebnega konstruktorja

 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(); ) )

Izhod

 To je zasebni konstruktor.

V zgornjem primeru smo ustvarili zasebni konstruktor Testrazreda. Zato ne moremo ustvariti predmeta Testrazreda zunaj razreda.

Zato smo ustvarili public staticmetodo, imenovano instanceMethod()znotraj razreda, ki se uporablja za ustvarjanje predmeta razreda Test. In iz Mainrazreda metodo pokličemo z imenom razreda.

Primer 2: Oblikovanje Java Singleton z uporabo zasebnega konstruktorja

Vzorec zasnove Java Singleton zagotavlja, da mora obstajati le en primerek razreda. Da bi to dosegli, uporabimo zasebni konstruktor.

 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(); ) )

Izhod

 Znotraj zasebnega konstruktorja je dosežen singleton vzorec

V zgornjem primeru smo ustvarili razred z imenom Jeziki. Predavanje vsebuje,

  • privatespremenljivka vrste jezik - razred
  • Jezik () - privatekonstruktor
  • getInstance () - public staticmetoda tipa razreda
  • display () - publicmetoda

Ker je konstruktor private, iz zunanjega razreda ne moremo ustvariti predmetov Language. Zato smo znotraj getInstance()metode ustvarili objekt razreda .

Vendar smo pogoj postavili tako, da je ustvarjen samo en objekt. In metoda vrne objekt.

Opazite vrstico,

 db1 = Language.getInstance();

Tukaj,

  • db1 je spremenljivka jezika
  • Language.getInstance () - pokliče metodogetInstance()

Ker getInstance()vrne objekt razreda Language, je spremenljivka db1 dodeljena vrnjenemu predmetu.

Na koncu smo display()metodo poimenovali z uporabo predmeta.

Zanimive Članki...