[ HTML ] [ Java ] [ Bahasa C ]


Selasa, Mei 14, 2019

Inisialisasi block instance (IIB) pada Java

Pada program Java, operasi bisa dilakukan di dalam method, constructor, dan block inisialisasi. Block inisialisasi instance (atau IIB dalam akronim berbahasa inggris) digunakan untuk menginisialisasi variabel instance. IIB dieksekusi sebelum constructor. IIB dijalankan setiap kali ketika object dari class diciptakan.

satu, Block inisialisasi dieksekusi kapanpun class diinisialisasi dan sebelum constructor dipanggil.
dua, IIB biasanya ditempatkan di atas constructor dengan tanda kurung (braces).
tiga, IIB tidak semuanya penting untuk dimasukkan ke dalam class.



Output:
IIB block
Constructor Called

Program multiple block inisialisasi instance
Dapat juga dimiliki lebih dari satu IIB dalam sebuah class single. Jika compiler menemukan multiple IIB, maka semua IIB akan dieksekusi dari awal hingga akhir dimana IIB yang ditulis pertama akan dieksekusi terlebih dahulu.

Output:
IIB1 block
IIB2 block
IIB3 block
Constructor Called

Block inisialisasi instance dengan parent class
IIB dapat dimiliki oleh parent class. Kode program block inisialisasi instance akan dijalankan terlebih dahulu setelah dipanggil super() dalam sebuah constructor. Compiler akan mengeksekusi parent class dari IIB sebelum mengeksekusi class IIB saat ini. Perhatikan contoh berikut ini:

Output:
B-IIB block
B-Constructor Called
A-IIB block
A-Constructor Called

Pada contoh sebelumnya, compiler mencoba mengeksekusi constructor dari class A, ketika object dari class A diciptakan. Tetapi compiler menemukan super() statement dan menuju ke contructor parent class terlebih dahulu untuk dieksekusi. Perintah dari eksekusi dalam kasus ini adalah sebagai berikut:

satu, Block inisialisasi instance dari super class
dua, Constructor dari super class
tiga, Block inisialisasi instance dari class
empat, Constructor dari class

Point penting:
satu, Block inisialisasi instance akan dijalankan setiap instance baru diciptakan.
dua, Block inisialisasi dijalankan dalam perintah untuk tampil dalam program.
tiga, Block inisialisasi instance dipanggil setelah constructor parent class dipanggil yaitu setelah super() constructor dipanggil.





Tidak ada komentar:

Posting Komentar

Respon komentar 7 x 24 jam, so please be patient :D