Program Java untuk mengimplementasikan konstruktor pribadi

Dalam contoh ini, kita akan belajar mengimplementasikan konstruktor privat di Java.

Untuk memahami contoh ini, Anda harus memiliki pengetahuan tentang topik pemrograman Java berikut:

  • Pembuat Java
  • Java Singleton

Contoh 1: Program Java untuk membuat konstruktor pribadi

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

Keluaran

 Ini adalah konstruktor pribadi.

Pada contoh di atas, kami telah membuat konstruktor privat Testkelas. Karenanya, kita tidak dapat membuat objek Testkelas di luar kelas.

Inilah sebabnya mengapa kami telah membuat public staticmetode bernama instanceMethod()di dalam kelas yang digunakan untuk membuat objek dari kelas Tes. Dan dari Mainkelas tersebut, kita memanggil metode tersebut dengan menggunakan nama kelas.

Contoh 2: Desain Java Singleton menggunakan konstruktor pribadi

Pola desain Java Singleton memastikan bahwa hanya ada satu instance kelas. Untuk mencapai ini kami menggunakan konstruktor pribadi.

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

Keluaran

 Pola Inside Private Constructor Singleton Pattern tercapai

Dalam contoh di atas, kami telah membuat kelas bernama Bahasa. Kelas berisi,

  • bahasa - privatevariabel tipe kelas
  • Bahasa () - privatekonstruktor
  • getInstance () - public staticmetode tipe kelas
  • display () - publicmetode

Karena konstruktornya private, kita tidak dapat membuat objek Bahasa dari kelas luar. Karenanya, kami telah membuat objek kelas di dalam getInstance()metode.

Namun, kami telah mengatur kondisi sedemikian rupa sehingga hanya satu objek yang dibuat. Dan, metode mengembalikan objek tersebut.

Perhatikan garisnya,

 db1 = Language.getInstance();

Sini,

  • db1 adalah variabel tipe Bahasa
  • Language.getInstance () - memanggil metodegetInstance()

Karena, getInstance()mengembalikan objek dari kelas Bahasa, variabel db1 ditugaskan dengan objek yang dikembalikan.

Akhirnya, kami telah memanggil display()metode menggunakan objek.

Artikel yang menarik...