Java-program for implementering av private konstruktører

I dette eksemplet vil vi lære å implementere private konstruktører i Java.

For å forstå dette eksemplet, bør du ha kunnskap om følgende Java-programmeringsemner:

  • Java-konstruktører
  • Java Singleton

Eksempel 1: Java-program for å lage en privat konstruktør

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

Produksjon

 Dette er en privat konstruktør.

I eksemplet ovenfor har vi opprettet en privat konstruktør av Testklassen. Derfor kan vi ikke lage et objekt fra Testklassen utenfor klassen.

Dette er grunnen til at vi har laget en public staticmetode som er oppkalt instanceMethod()inne i klassen som brukes til å lage et objekt av testklassen. Og fra Mainklassen kaller vi metoden ved hjelp av klassenavnet.

Eksempel 2: Java Singleton-design ved hjelp av en privat konstruktør

Java Singleton designmønsteret sørger for at det bare skal være en forekomst av en klasse. For å oppnå dette bruker vi den private konstruktøren.

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

Produksjon

 Inside Private Constructor Singleton Pattern oppnås

I eksemplet ovenfor har vi opprettet en klasse som heter Languages. Klassen inneholder,

  • språk - klasse type privatevariabel
  • Språk () - privatekonstruktør
  • getInstance () - public staticklassetypemetode
  • display () - publicmetode

Siden konstruktøren er det private, kan vi ikke lage objekter av språk fra den ytre klassen. Derfor har vi laget et objekt av klassen inne i getInstance()metoden.

Vi har imidlertid satt tilstanden på en slik måte at bare ett objekt blir opprettet. Og metoden returnerer objektet.

Legg merke til linjen,

 db1 = Language.getInstance();

Her,

  • db1 er en variabel av språktypen
  • Language.getInstance () - kaller metodengetInstance()

Siden, getInstance()returnerer objektet til språkklassen, tildeles db1-variabelen det returnerte objektet.

Til slutt har vi kalt display()metoden ved hjelp av objektet.

Interessante artikler...