Pada bahasa pemrograman, ada istilah parent child yang sering Anda dengar. Namun, apakah hal tersebut ada di Java. Iya ada. Namun, namanya bukan parent child melainkan Inheritance atau penurunan. Konsep Penurunan atau Inheritance merupakan salah satu teknik OOP dimana Anda bisa memanggil variable di clas...

Parent dan Child di Java

Pada bahasa pemrograman, ada istilah parent child yang sering Anda dengar. Namun, apakah hal tersebut ada di Java. Iya ada. Namun, namanya bukan parent child melainkan Inheritance atau penurunan. Konsep Penurunan atau Inheritance merupakan salah satu teknik OOP dimana Anda bisa memanggil variable di class lain tanpa membuat objek dari class tersebut. Tanpa basa basi lagi langsung masuk contohnya aja ya.

Misal, terdapat sebuah class Bagasi yang memiliki turunan Mobil dan Motor merupakan turunan dari Mobil. Ingat, konsep Inheritance hampir mirip seperti konsep OOP hanya saja yang membedakannya ialah kalau OOP Anda perlu membuat Objek dari class lain sedangkan pada Inheritance Anda tidak perlu membuat Objek dari class lain namun, cukup menggunakan keyword extends di bagian pendeklarasian class nya. Berikut contohnya ada 3 Class yang berbeda dimana, Parent ialah Bagasi.class dan Child ialah Mobil.class dan Motor.class merupakan Child dari Mobil.class.

File : Bagasi.class

/**
 * 
 * @author Yudi Setiawan
 * 
 * Bagasi.class merupakan Parent dari Mobil.class
 *
 */

public class Bagasi
{
	//	Variable Bagasi sebagai parent
	static String warna_bagasi = "Hijau";
	static int panjang = 10;
	private static int lebar = 20;
}



File : Mobil.class

/**
 * 
 * @author Yudi Setiawan
 * 
 * Mobil.class merupakan turunan dari Bagasi.class
 *
 */

class Mobil extends Bagasi
{
	//	Variable Mobil
	static String warna_mobil = "Merah";
	protected static String merk = "BMW";
	
	static void panggilMobil()
	{
	
		//	Panggil Warna Bagasi di class Mobil atau Child
		System.out.println("[dipanggil dari mobil]Warna Bagasi   : "+warna_bagasi);
		
		//	Panggil panjang Bagasi di class Mobil atau Child
		System.out.println("[dipanggil dari mobil]Panjang Bagasi : "+panjang);
		
		//	Panggil lebar Bagasi di class Mobil atau Child
		//	Syntax di bawah ini error
		//	Karena, variable lebar bersifat private.
		//	Private berarti, hanya bisa diakses di class itu sendiri dan tidak bisa dipanggil di class lain.
	//	System.out.println("Lebar Bagasi   : "+lebar);	
	}
	
}



File : Motor.class

/**
 * 
 * @author Yudi Setiawan
 * 
 * Motor.class merupakan turunan dari Mobil.class
 *
 */

class Motor extends Mobil
{
	public static void main(String[] args)
	{
		//	Panggil Variable Mobil
		System.out.println("Warna Mobil : "+warna_mobil);
		
		//	Variable Merk Mobil masih bisa dipanggil karena, bersifat protected
		//	yang berarti, variable merk bisa diakses di kelas turunannya sendiri namun,
		//	tidak bisa dipanggil di class lain yang bukan turunannya.
		System.out.println("Merk Mobil  : "+merk);	 
		
		//	Motor merupakan turunan dari Mobil.class
		//	dan Mobil.class turunan dari Bagasi.class
		//	Berarti, Motor.class bisa memanggil variable di Bagasi.class
		System.out.println("Warna Bagasi   : "+warna_bagasi);
		System.out.println("Panjang Bagasi : "+panjang);
		
		/*
		  	Berikut permisalan dari contoh kasus ini.
		  	-> Bagasi.class merupakan Ayah dari Mobil.class dan Kakek dari Motor.class
		  	-> Mobil.class merupakan Ayah dari Motor.class
		  	-> Motor.class merupakan anak dari Mobil.class dan cucu dari Bagasi.class
		 */
		
		//	Coba memanggil prosedur Mobil
		panggilMobil();
	}
}



Gimana sudah paham kan penggunaan inheritance di Java. Biar Anda lebih paham berikut saya beri penjelasan sedikit tentang inheritance.

1. Semua Variable di Parent pasti bisa di panggil di Child kecuali, yang bersifat private. Namun, semua variable di Child tidak akan bisa di panggil di Parent. Mengapa itu bisa tejadi? Saya beri permisalan, Anda mempunyai seorang Ayah. Ayah Anda mempunyai Mobil dan Anda sebagai anaknya pasti bisa memakai Mobil Ayah Anda. Kemudian, Anda sudah memiliki istri dan Ayah Anda tidak bisa memiliki istri Anda.
2. Semua Variable di Child (Child A) yang memiliki Child (Child A1) lagi pasti bisa memanggil Parent dari Child A. Permisalannya seperti ini, Anda mempunyai Ayah, dan Anda sebagai Anaknya dan Anda mempunyai seorang Anak. Maka, Anak Anda tersebut bisa memakai Mobil dari Ayah Anda atau Kakeknya.


About Author

Yudi Setiawan

Saat ini aktif sebagai Mahasiswa di salah satu Universitas di kota Medan dengan mengambil bidang Fakultas Teknik dan Ilmu Komputer. Sangat senang dengan bahasa pemrograman Java dan Android.


Comment & Discussions

    Please LOGIN before if you want to give the comment.