Referensi variabel dari
Parent class mampu memegang
object referensinya sendiri seperti halnya referensi
object child pada bahasa pemrograman Java. Pada Java,
method adalah virtual secara
default.
 |
Ilustrasi Parent dan Child Class Java |
Contoh: Perkirakan hasil output dari program Java berikut.
// Sebuah program Java
// mendemonstrasikan bahwa
// anggota non method dapat
// diakses menurut tipe
// referensi (tidak seperti
// method yang dapat diakses
// menurut object referensi.
class Parent
{
int value = 1000;
Parent()
{System.out.println("Parent"
+" Constructor");}
}
class Child extends Parent
{
int value = 10;
Child()
{System.out.println("Child"
+" Constructor");}
}
/* Driver class */
class Test
{
public static void main(String[] args){
Child obj=new Child();
System.out.println("Referensi"
+" dari tipe child :"
+obj.value);
// Catatan bahwa "Parent par =
// new Child()" dapat
// menghasilkan hasil yang
// sama.
Parent par = obj;
// Par yang memegang obj akan
// mengakses nilai variabel
// dari parent class.
System.out.println("Referensi"
+" dari tipe parent : "
+par.value);}
}
Output:
Parent ConstructorChild ConstructorReferensi dari tipe child : 10Referensi dari tipe parent : 1000
Jika sebuah referensi variabel parent memegang referensi dari child class dan memilliki "value" variabel dalam kedua parent dan child class-nya, maka hal itu akan mengacu kepada variabel parent class "value", apakah akan memegang referensi object child class atau tidak. Referensi yang memegang referensi object child class tidak akan dapat mengakses anggota dari class child. Hal ini terjadi karena kompilator hanya menggunakan mekanisme polymorphism spesial untuk method pada Java. Karena hal ini, maka sangat mungkin untuk mengakses anggota data child penggunakan pointer parent dengan typecasting.
Artikel ini didedikasikan kepada: Farisa Nur Rizkika, Gega Agli Dutatama, Herawati Mega, Ilham Bashairil Alam, dan Indah Nur Hastuti.
Apa yang dimaksud dengan child class Java?
BalasHapusChild class Java adalah class yang mewarisi properti lain yang dikenal sebagai class anak atau class turunan, atau subclass, dan merupakan class yang propertinya diwarisi dari class induk.
HapusApa yang dimaksud dengan parent class Java?
BalasHapusPada Java, class bisa diturunkan dari class lainnya, sehingga mewarisi bidang dan method cari class tersebut. Class yang berasal dari dari kelas induk juga disebu sebagai superclass atau parent class.
HapusAnak (child) yang menerima warisan, sedangkan bapak (parent) yang memberikan warisan kepada anak.
BalasHapus