konsep turunan inheritance program Java
Konsep Turunan Atau Pewarisan (Inheritance) Di Java
Inheritance (turunan atau pewarisan) adalah salah satu konsep penting dalam OOP (Object Oriented Programming | pemrograman berorientasi obyek). Konsep turunan membolehkan penggunaan kelas yang sudah ada dijadikan sebagai superclass untuk mendefinisikan kelas baru turunannya.

Baca artikel Konsep Turunan (Inheritance) Di Java Melalui Contoh Program

Kelas turunan (subclass) akan mewarisi data field (properti atau atribut) serta metoda terakses (accessible methods) yang dimiliki superclass. Superclass akan memiliki sifat lebih umum (general), sedangkan kelas turunan akan lebih spesifik. Umumnya, kelas turunan juga mempunyai data field dan metoda sendiri selain data field dan metoda yang diwarisi dari superclass.

Penekanan konsep turunan adalah untuk menggunakan kelas yang sudah ada (reusability). Konsep turunan dapat mempersingkat waktu dalam mendefinisikan kelas turunan (subclass). Sekali sebuah subclass didefinisikan, kelas tersebut dapat menjadi superclass untuk subclass yang lain.

Kelas Object berada di puncak teratas dalam hierarki kelas Java. Semua kelas, langsung maupun tidak langsung, merupakan turunan dari kelas Object. Salah satu metoda istimewa yang dimiliki oleh kelas Object dan diwariskan ke kelas turunannya (subclass) adalah metoda toString yang merupakan representasi string dari sebuah obyek.

1. Superclass dan Subclass.

Di Java, kelas atas atau kelas asal sering disebut dengan superclass, base class atau parent class, sedangkan kelas turunannya sering disebut dengan child class, derived class atau extended class. Di artikel Mendefinisikan Kelas Java terdapat contoh program terkait dengan pendefinisian kelas baru PersegiPanjang.

Persegi panjang adalah bangun datar yang mempunyai sisi panjang dan lebar sebagai data field. Dari data field panjang dan lebar ini, dapat dihitung keliling dan luas dari persegi panjang.

Sebagai contoh, Anda ingin membuat kelas baru yaitu kelas Balok. Balok adalah bangun ruang yang mempunyai sisi panjang, lebar dan tinggi sebagai data field. Dari data field panjang, lebar dan tinggi, dapat ditentukan volume balok. Untuk memudahkan dan mempersingkat definisi kelas Balok, Anda dapat menggunakan atau memanfaatkan kelas PersegiPanjang sebagai superclass dari subclass Balok.

2. Kata kunci extends.

Kata kunci extends digunakan untuk mendeklarasikan kelas turunan (subclass) dari kelas atasnya (superclass). Dengan kata kunci extends, kelas turunan akan mewarisi data field dan metoda yang dimiliki oleh kelas di atasnya.

Sebenarnya tidak semua data field dan metoda diwariskan kepada kelas turunnannya. Data field dan metoda yang dideklarasikan dengan modifier private, tidak diwariskan kepada kelas turunannya. Berikut ini adalah sintaksis untuk mendeklarasikan kelas turunan (subclass) dari superclass.

public class nama-subclass extends nama-superclass {
   // data dan metoda
}

3. Subclass dan superclass di paket berbeda.

Kelas turunan dapat didefinisikan lebih cepat dengan memanfaatkan kelas yang ada. Bila definisi kelas turunan berasal dari superclass yang berada di paket berbeda, Anda harus mengimpor kelas tersebut terlebih dahulu dengan kata kunci import.

Bila superclass berada di paket yang sama dengan subclass yang didefinisikan, Anda tidak perlu mengimpor superclass. Kelas sebaiknya dikelompokkan menurut jenis dan fungsinya dan diletakkan di nama paket yang menggambarkan kelas tersebut.

Sebagai contoh, kelas PersegiPanjang di artikel Mendefinisikan Kelas Java adalah bangun datar dan diletakkan di direktori (paket) c:\filejava\javaapp\kelas\bangun\datar. Bila Anda mendefinisikan kelas baru, misalnya saja kelas Balok yang merupakan turunan dari kelas PersegiPanjang, sebaiknya kelas tersebut diletakkan di direktori yang berbeda, misalnya c:\filejava\javaapp\kelas\bangun\ruang karena subclass Balok adalah bangun ruang yang berbeda dengan bangun datar.

Dengan memanfaatkan paket (package) untuk mengkategorikan atau mengkelompokkan kelas-kelas Java, Anda akan lebih mudah menemukan kelas yang ingin digunakan. Paket juga memungkinkan Anda untuk mendefinisikan kelas dengan nama sama.

Namun demikian, ini bukan berarti bahwa kelas yang masuk kategori bagun datar dan bagun ruang benar-benar harus diletakkan dalam paket berbeda. Anda dimungkinkan untuk meletakkan kelas apapun dalam satu paket tanpa harus mengelompokkannya ke dalam paket berbeda.

Produk Populer

Murah Taffware OKD180 power supply station 220V 69800mAh
Taffware OKD180 Power Supply Station Generator 220V 69800mAh
Rp 1.045.500
(4.8/5)
Murah Fosi Audio DA2120C Power Amplifier
Fosi Audio DA-2120C Bluetooth 5.0 Amplifier 2.1 Channel with Remote
Rp 2.138.900
(5/5)
Murah Fosi Audio BT30D Pro Power Amplifier
Fosi Audio BT30D PRO Bluetooth 5.0 Amplifier 2.1 Channel 165x2+350W
Rp 1.298.600
(5/5)
Murah Taffware OKD320A Power Supply Station 84000mAh 300W
TAFFWARE OKD320A Power Supply Station Generator Portable 84000mAh 300W
Rp 1.543.500
(4.8/5)

Dapatkan DISKON dan GRATIS ONGKIR untuk pembelian melalui aplikasi Tokopedia.