Konstruktor Pribadi di Jawa: Kasus Penggunaan Dijelaskan dengan Contoh

Diterbitkan: 2021-04-09

Daftar isi

pengantar

Sebuah konstruktor pribadi di Jawa digunakan dalam membatasi pembuatan objek. Ini adalah konstruktor instance khusus yang digunakan di kelas khusus anggota statis. Jika konstruktor dideklarasikan sebagai pribadi, maka objeknya hanya dapat diakses dari dalam kelas yang dideklarasikan. Anda tidak dapat mengakses objeknya dari luar kelas konstruktor.

Kasus Penggunaan Konstruktor Pribadi

Konstruktor pribadi di Jawa hanya diakses dari dalam kelas. Anda tidak dapat mengakses konstruktor pribadi dari kelas lain mana pun. Jika objek belum diinisialisasi, maka Anda dapat menulis fungsi publik untuk memanggil instruktur privat. Jika objek sudah diinisialisasi, maka Anda hanya dapat mengembalikan instance objek tersebut. Konstruktor pribadi di Java memiliki kasus penggunaan berikut:

  • Anda dapat menggunakannya dengan kelas khusus anggota statis.
  • Anda dapat menggunakannya dengan utilitas statis atau kelas konstan.
  • Anda dapat menggunakannya untuk melayani kelas tunggal.
  • Anda dapat menggunakannya untuk menetapkan nama, misalnya, pembuatan dengan menggunakan metode pabrik.
  • Anda dapat menggunakannya untuk mencegah subclassing.

Kelas Tunggal

Konstruktor pribadi di Jawa digunakan untuk membuat kelas tunggal. Kelas tunggal adalah kelas di Java yang membatasi jumlah objek dari kelas yang dideklarasikan menjadi satu. Konstruktor pribadi di Java memastikan bahwa hanya satu objek yang dibuat pada satu waktu. Ini membatasi instance kelas di dalam kelas yang dideklarasikan sehingga tidak ada instance kelas yang dapat dibuat di luar kelas yang dideklarasikan. Anda dapat menggunakan kelas tunggal dalam konsep konektivitas jaringan dan database.

Contoh 1: Contoh berikut menunjukkan bagaimana konstruktor pribadi di Java membatasi jumlah objek dalam kelas tunggal.

impor java.io.*;

kelas newTestClass {

objek newTestClass statis = null;

int publik = 20;

private newTestClass() {

}

//kami telah membuat konstruktor pribadi

publik statis newTestClass displayInstance()

/**

*displayInstance() adalah metode publik yang akan kita gunakan untuk membuat instance.

*Panggil metode ini untuk mengakses instance ini dari luar kelas.

*/

{

jika (objek == null)

objek = newTestClass();

//objek kelas tunggal dibuat

mengembalikan objek;

}

}

kelas publik SingletonClass {

public static void main(String args[]) {

newTestClass instance1 = newTestClass.displayInstance();

//menampilkan instance kelas singleton dengan memanggil metode publik

newTestClass instance2 = newTestClass.displayInstance();

//menampilkan instance kelas singleton dengan memanggil metode publik

instance1.a = instance1.a + 26;

System.out.println(“Instance 1 yang dibuat memiliki nilai berikut = ” + instance1.a);

System.out.println(“Instance 2 yang dibuat memiliki nilai berikut = ” + instance2.a);

}

}

Keluaran

Instance 1 yang dibuat memiliki nilai berikut = 46

Instance 2 yang dibuat memiliki nilai berikut = 46

Dalam program di atas, nilai instance 2 secara otomatis diperbarui ketika kami memperbarui nilai objek instance1. Pengamatan ini menunjukkan bahwa instance1 dan instance 2 merujuk ke objek yang sama.

Contoh 2: Contoh berikut menunjukkan bagaimana konstruktor pribadi di Java memastikan bahwa tidak lebih dari satu objek dibuat pada satu waktu.

// Program Java untuk implementasi kelas tunggal

Impor java.io.*;

kelas publik newTestClass {

private static newTestClass var=null;

pribadi newTestClass(){

//Konstruktor Pribadi dapat diakses di dalam kelas

}

public static newTestClass testObject(){

// Metode ini memastikan bahwa hanya satu objek yang dibuat dalam satu waktu

jika(var==null){

var= newTestClass();

}

kembali var;

}

tampilan batal publik(){

System.out.println(“Ini adalah contoh konstruktor Private menggunakan kelas Singleton. “);

}

public static void main(String args[]){

newTestClass newObject= newTestClass.testObject();

newObject.display();

}

}

Keluaran

Ini adalah contoh konstruktor Private menggunakan kelas Singleton.

Contoh 2: Konstruktor Pribadi di Jawa untuk membatasi jumlah instance kelas.

Contoh ini menunjukkan bagaimana Anda dapat membatasi jumlah instance kelas dengan mendeklarasikan private konstruktor.

kelas publik limitInstanceCreationClass {

public static void main(String[] args) {

RestrictInstance obj;

int = 1;

sementara (a<=20)

{

obj = RestrictInstance.getLimInstance();

sebuah++;

}

}

}

kelas RestrictInstance {

public static int varCount = 0;

/**

*buat konstruktor pribadi yang meningkatkan jumlah

*dari variabel varCount setelah setiap pembuatan instance

*/

Private RestrictInstance() {

var Hitung++;

System.out.println(“Nomor Instance ” + varCount + ” telah dibuat.”);

}

publik statis disinkronkan RestrictInstance getLimInstance() {

if(varCount <5) {

kembalikan RestrictInstance() baru;

}

System.out.println(“Batas instance maksimum tercapai. Anda tidak diperbolehkan membuat instance lagi.”);

Sistem.gc();

kembali nol;

}

/**

*hapus instance dan kurangi hitungannya

*dari variabel varCount

*/

finalisasi kekosongan publik()

{

System.out.println(“Instance dihapus.”);

varCount–;

}}

Keluaran

Instance nomor 1 dibuat.

Instance nomor 2 dibuat.

Instance nomor 3 dibuat.

Instance nomor 4 dibuat.

Contoh nomor 5 dibuat.

Batas instans maksimum tercapai. Anda tidak diizinkan membuat instance lagi.

Batas instans maksimum tercapai. Anda tidak diizinkan membuat instance lagi.

Batas instans maksimum tercapai. Anda tidak diizinkan membuat instance lagi.

Batas instans maksimum tercapai. Anda tidak diizinkan membuat instance lagi.

Contoh dihapus.

Contoh dihapus.

Contoh dihapus.

Contoh dihapus.

Batas instans maksimum tercapai. Anda tidak diizinkan membuat instance lagi.

Instance nomor 1 dibuat.

Instance nomor 2 dibuat.

Instance nomor 3 dibuat.

Instance nomor 4 dibuat.

Contoh nomor 5 dibuat.

Batas instans maksimum tercapai. Anda tidak diizinkan membuat instance lagi.

Batas instans maksimum tercapai. Anda tidak diizinkan membuat instance lagi.

Batas instans maksimum tercapai. Anda tidak diizinkan membuat instance lagi.

Batas instans maksimum tercapai. Anda tidak diizinkan membuat instance lagi.

Batas instans maksimum tercapai. Anda tidak diizinkan membuat instance lagi.

Batas instans maksimum tercapai. Anda tidak diizinkan membuat instance lagi.

Batas instans maksimum tercapai. Anda tidak diizinkan membuat instance lagi.

Batas instans maksimum tercapai. Anda tidak diizinkan membuat instance lagi.

Batas instans maksimum tercapai. Anda tidak diizinkan membuat instance lagi.

Batas instans maksimum tercapai. Anda tidak diizinkan membuat instance lagi.

Contoh dihapus.

Contoh dihapus.

Contoh dihapus.

Instance nomor 1 dibuat.

Instance nomor 2 dibuat.

Instance nomor 3 dibuat.

Instance nomor 4 dibuat.

Contoh nomor 5 dibuat.

Pelajari Kursus Perangkat Lunak online dari Universitas top dunia. Dapatkan Program PG Eksekutif, Program Sertifikat Tingkat Lanjut, atau Program Magister untuk mempercepat karier Anda.

Kesimpulan

Kode yang digunakan dalam artikel hanya untuk tujuan penjelasan. Anda dapat mengubah pernyataan yang diberikan dalam contoh sesuai kebutuhan Anda. Di blog ini, kami membahas bagaimana konstruktor pribadi di Java membatasi jumlah objek dalam satu kelas.

Anda dapat mencoba kode untuk memperkuat pengetahuan konstruktor Java Anda. Jika Anda ingin mendapatkan pemahaman mendalam tentang Java, lihat program PG Eksekutif upGrad dalam kursus Pengembangan Stack Penuh yang dirancang untuk para profesional yang bekerja untuk mendapatkan keahlian di bidang ini.

Apa itu konstruktor dalam pemrograman?

Konstruktor dalam pemrograman adalah metode yang dipanggil secara otomatis ketika suatu objek diinisialisasi. Tujuan konstruktor adalah untuk menginisialisasi objek. Konstruktor harus selalu bersifat publik dan dideklarasikan tanpa tipe pengembalian apa pun. Konstruktor digunakan untuk menginisialisasi objek dan melakukan tugas lain yang hanya dapat dilakukan sekali. Konstruktor juga digunakan untuk melakukan inisialisasi kelas, yaitu untuk melakukan tugas yang membuat kelas.

Apa saja jenis konstruktor di Jawa?

Ada lima jenis konstruktor di Jawa. Mereka adalah: Konstruktor tanpa argumen: Ini memiliki implementasi default, yang dieksekusi ketika kelas dimuat ke dalam memori. Kelas yang tidak memiliki konstruktor tanpa argumen HARUS dideklarasikan sebagai final. Konstruktor default: Konstruktor ini dibuat ketika kelas ditulis dalam Java dan digunakan untuk menginisialisasi semua variabel kelas (atribut) ke nilai defaultnya (nol atau nol). Konstruktor berparameter: Konstruktor ini digunakan untuk menginisialisasi beberapa variabel dari beberapa nilai. Konstruktor tanpa nilai kembalian: Digunakan untuk menginisialisasi beberapa variabel dari beberapa nilai. Konstruktor dengan nilai kembalian: digunakan untuk menginisialisasi beberapa variabel dari beberapa nilai dan juga mengembalikan dengan nilai.

Apa itu konstruktor pribadi di Jawa?

Konstruktor pribadi dapat digunakan untuk membuat kelas yang tidak dapat diubah. Tanpa menggunakan konstruktor pribadi, kita dapat membuat kelas yang tidak dapat diubah dengan mendeklarasikan final kelas dan membuat semua atribut sebagai final (misalnya nama String akhir pribadi;). Konstruktor pribadi tidak dapat langsung dipanggil oleh objek klien dari kelas. Mereka hanya dapat dipanggil secara internal dengan metode kelas (bahkan pribadi). Anda dapat memiliki konstruktor pribadi dengan satu atau lebih parameter. Anda tidak dapat memiliki tipe pengembalian konstruktor menjadi boolean primitif. Itu bisa berupa String atau Kelas.