Oop – Inheritance Atau Turunan Dalam Bahasa Pemrograman Java

31 views

Inheritance merupakan salah satu konsep Pemrograman Berorientasi Objek, dimana sebuah class sanggup menurunkan atribut/ method ke class lain.


Contoh : Kita menciptakan 3 buah class, SiswaSD, SiswaSMP, SiswaSMA. Seperti kita tahu, ke tiga class tersebut memiliki beberapa atribut yang sama, menyerupai Nama, Nomor Pelajar (NISN), TTL, Alamat, dsb. Tentu saja kita tidak ingin menciptakan atribut yang sama pada setiap class(menulis aba-aba yang sama berulang itu ga baik bagi kesehatan), kemudian bagaimana mengatasinya ?

Dengan inilah kita sanggup memakai salah satu konsep oop ialah inheritance.
Caranya gampang, kita tinggal buat class Pelajar yang memiliki atribut yang sama tadi, kemudian kita buat class SiswaSD, SiswaSMP, dan SiswaSMA tadi menjadi keturunan dari class Pelajar.


Contoh


Sebagai contoh, pertama kita buat 3 file class terpisah dalam package yang sama.

Buat class Main, Pelajar SiswaSD, SiswaSMP, dan SiswaSMA

Source Code File Main:

Source Code File Pelajar:


Source Code File SiswaSD, SiswaSMP, dan SiswaSMA


Output:

Output Source code diatas


Pembahasan

Pertama, perhatikan class Pelajar, kita menciptakan class pelajar sebagai abstract class, dengan menciptakan sebuah class sebagai abstract, class tersebut tidak dimungkinkan untuk dibentuk objectnya.
jadi misal kita mencoba 

Pelajar pelajar = new Pelajar();

Maka dikala menjalankan agenda akan terdapat error.
Kenapa dibentuk abstract ?
Gunakan logika anda, misal kita memiliki macan, dan kucing, mereka merupakan turunan dari class hewan.
Kita tau bentuk, ukuran dll dari kucing, kita tau bentuk, ukuran dll dari macan, tapi bila kita menciptakan objek hewan, bagaimana sih binatang itu ? tentunya harus lebih spesifik. Hal ini merupakan salah satu alasan kenapa dibentuk class hewan menjadi abstract

baca juga : Objek dan Kelas dalam Bahasa Pemrograman Java


Kedua, perhatikan attribut pada class Pelajar ialah NISN dan Nama. Dan juga perhatikan method dibawahnya berupa getter dan setter. 

Hal tersebut merupakan salah satu Fundamental dari OOP ialah Enkapsulasi atau disebut juga dengan Data hiding. Penjelasan lebih lanjut akan dibahas nanti.
Tetapi yang perlu anda ketahui, method getter untuk mendapat nilai, method setter untuk mengatur nilai.

Lihat aba-aba diatas. Pertama tama kita menciptakan atribut NISN (String), menjadi private atribut, dengan ini class lain tidak sanggup mengubah/ mengakses nilai NISN. 

baca juga : Identifier, Modifer, Variabel dan Keywords Bahasa Java


Untuk lebih memudahkan saya mengubah nama parameter pada setNisn(), sama saja menyerupai pada aba-aba di class Pelajar, tetapi karna nama atribut( NISN ) dan nama parameter( NISN ) yang sama kita harus memilih kita mau mengakses yang mana, untuk itulah dipakai syntax this. yang berarti kita mengakses dari class Pelajar

Kita juga sanggup melaksanakan This.getNisn()

Contoh:

public String getNisnDitambahStringHaha() {     return this.getNisn() + " Haha"; }


Output:




Ketiga, bagian yang paling penting.
Perhatikan class SiswaSD, SiswaSMP, dan SiswaSMA. Untuk menyebabkan mereka sebagai turunan dari class Pelajar, kita tinggal memakai syntax extends. Perlu diketahui Untuk extends hanya dimungkinkan 1 class induk, tetapi untuk implements interface sanggup dilakukan untuk banyak interface.
Apa itu interface ? tunggu saja di pada posting berikutnya


Sekian dari saya, bila ada yang kurang dimengerti sanggup ditanyakan di kolom komentar.
Terima Kasih


Sumber http://ng0ding.blogspot.com/

Author: 
    author
    No related post!