Nama Matakuliah : Pemrograman Berorientasi Objek
Nama : I Gusti Ngurah Yoga Pawitra
NIM : 1404505052
Nama Dosen : I Putu Agus Eka Pratama ST.,MT
Jurusan : Teknologi Informasi
Fakultas : Teknik
Universitas : Udayana
INHERITANCE
Pada postingan kali ini saya akan
membahas tentang Inheritance. Inheritance adalah Salah satu konsep dasar dari
pemrograman berbasis objek pada java. Pada dasarnya, kita melakukan
inheritance(pewarisan) untuk membuat suatu class baru(class turunan/subclass)
yang masih memiliki sifat atau spesifikasi dari superclass. Di dalam Java untuk
mendeklarasikan suatu class sebagai subclass dilakukan dengan cara menambahkan
kata kunci extends setelah deklarasi nama class, kemudian diikuti dengan nama
parent class-nya. Kata kunci extends tersebut memberitahu kompiler Java bahwa
kita ingin melakukan perluasan class.
Beberapa aturan tentang
pewarisan(inheritance) yang perlu diperhatikan :
1. Java hanya memperkenankan
adanya single inheritance. Konsep single inheritance hanya memperbolehkan suatu
sublass mempunyai satu parent class. Dengan konsep single inheritance ini,
masalah pewarisan akan dapat diamati dengan mudah.
2. Subclass juga merupakan class
biasa, maka kita tetap dapat melakukan pewarisan pada subclass ini. Misal :
class B merupakan subclass dari class A, kita dapat membuat class baru yang
diturunkan dari class B sehingga class baru tersebut akan memiliki apa yang
dimiliki oleh class A dan class B.
3. Suatu parent class dapat tidak
mewariskan sebagian member-nya kepada subclass-nya. Sejauh mana suatu member
dapat diwariskan ke class lain, ataupun suatu member dapat diakses dari class
lain, sangat berhubungan dengan access control (kontrol pengaksesan).
Sekarang kita coba membuat
program pewarisan pada java, berikut langkah-langkahnya :
Pertama kita buat project baru seperti biasa dan ingat diberi nama
Kemudian kita membuat dua kelas induk utama yaitu "Mamalia"
dan "Reptil".
class Mamalia {
int ID;
String Nama;
String Keterangan;
public Mamalia (int id, String
nama, String keterangan) {
ID = id;
Nama = nama;
Keterangan = keterangan;
}
public void Rincian() {
System.out.println("ID =
" +ID);
System.out.println("Nama
Hewan = " + Nama);
System.out.println("Keterangan
= " + Keterangan);
}
}
class Reptil {
int ID;
String Nama;
String Keterangan;
public Reptil (int id, String nama, String keterangan) {
ID = id;
Nama = nama;
Keterangan = keterangan;
}
public void Rincian() {
System.out.println("ID =
" +ID);
System.out.println("Nama
Hewan = " + Nama);
System.out.println("Keterangan = " + Keterangan);
}
}
Setelah membuat Superclass atau kelas Induk, selanjutnya kita akan
membuat kelas Anak atau Subclas. Kelas Mamalia memiliki Anak Kelas yaitu Sapi,
Kucing, dan Anjing dimana Anjing juga memiliki Anak Kelas yang terdiri dari
Alaskan Malamute, Akita, dan Beagle. Sedangkan Kelas Reptil memiliki Anak Kelas
yaitu Buaya, Cicak, dan Ular dimana Ular juga memiliki Anak Kelas yaitu Kobra
dan Python. Berikut adalah skrip masing-masing kelas.
1. Kelas Sapi
//kelas Sapi
//Turunan dari kelas Mamalia, menggunakan "extends" dan
"super"
class Sapi extends Mamalia {
String Jenis;
public Sapi (int mid, String nama, String keterangan, String jenis) {
super (mid, nama, keterangan);
Jenis = jenis;
}
public void Rincian() {
System.out.println("ID =
" + ID);
System.out.println("Nama
Hewan = " + Nama);
System.out.println("Keterangan = " + Keterangan);
System.out.println("Jenis
= " + Jenis);
}
}
2. Kelas Kucing
//kelas Kucing
//Turunan dari kelas Mamalia, menggunakan "extends" dan
"super"
class Kucing extends Mamalia {
String Jenis;
public Kucing (int mid, String nama, String keterangan, String jenis)
{
super (mid, nama, keterangan);
Jenis = jenis;
}
public void Rincian() {
System.out.println("ID =
" + ID);
System.out.println("Nama
Hewan = " + Nama);
System.out.println("Keterangan = " + Keterangan);
System.out.println("Jenis
= " + Jenis);
}
}
3. Kelas Anjing
//kelas Anjing
//Turunan dari kelas Mamalia, menggunakan "extends" dan
"super"
class Anjing extends Mamalia {
String Jenis;
public Anjing (int mid, String
nama, String keterangan, String jenis) {
super (mid, nama, keterangan);
Jenis = jenis;
}
public void Rincian() {
System.out.println("ID =
" + ID);
System.out.println("Nama
Hewan = " + Nama);
System.out.println("Keterangan = " + Keterangan);
System.out.println("Jenis
= " + Jenis);
}
}
4. Kelas Alaskan Malamute
//kelas AlaskanMalamute
//Turunan dari kelas Anjing, menggunakan "extends" dan
"super"
class AlaskanMalamute extends Anjing {
public AlaskanMalamute (int
aid, String nama, String keterangan, String jenis) {
super (aid, nama, keterangan,
jenis);
}
public void Rincian() {
System.out.println("ID =
" + ID);
System.out.println("Nama
Hewan = " + Nama);
System.out.println("Keterangan = " + Keterangan);
System.out.println("Jenis
= " + Jenis);
}
}
5. Kelas Akita
//kelas Akita
//Turunan dari kelas Anjing, menggunakan "extends" dan
"super"
class Akita extends Anjing {
public Akita (int aid, String
nama, String keterangan, String jenis) {
super (aid, nama, keterangan,
jenis);
}
public void Rincian() {
System.out.println("ID =
" + ID);
System.out.println("Nama
Hewan = " + Nama);
System.out.println("Keterangan = " + Keterangan);
System.out.println("Jenis
= " + Jenis);
}
}
6. Kelas Beagle
//kelas Beagle
//Turunan dari kelas Anjing, menggunakan "extends" dan
"super"
class Beagle extends Anjing {
public Beagle (int aid, String
nama, String keterangan, String jenis) {
super (aid, nama, keterangan,
jenis);
}
public void Rincian() {
System.out.println("ID =
" + ID);
System.out.println("Nama
Hewan = " + Nama);
System.out.println("Keterangan = " + Keterangan);
System.out.println("Jenis
= " + Jenis);
}
}
7. Kelas Reptil
class Reptil {
int ID;
String Nama;
String Keterangan;
public Reptil (int id, String
nama, String keterangan) {
ID = id;
Nama = nama;
Keterangan = keterangan;
}
public void Rincian() {
System.out.println("ID =
" +ID);
System.out.println("Nama
Hewan = " + Nama);
System.out.println("Keterangan = " + Keterangan);
}
}
8. Kelas Buaya
//kelas Buaya
//Turunan dari kelas Reptil, menggunakan "extends" dan
"super"
class Buaya extends Reptil {
String Jenis;
public Buaya (int rid, String nama, String keterangan, String jenis) {
super (rid, nama, keterangan);
Jenis = jenis;
}
public void Rincian() {
System.out.println("ID =
" + ID);
System.out.println("Nama
Hewan = " + Nama);
System.out.println("Keterangan = " + Keterangan);
System.out.println("Jenis
= " + Jenis);
}
}
9. Kelas Cicak
//kelas Cicak
//Turunan dari kelas Reptil, menggunakan "extends" dan
"super"
class Cicak extends Reptil {
String Jenis;
public Cicak (int rid, String nama, String keterangan, String jenis) {
super (rid, nama, keterangan);
Jenis = jenis;
}
public void Rincian() {
System.out.println("ID =
" + ID);
System.out.println("Nama
Hewan = " + Nama);
System.out.println("Keterangan
= " + Keterangan);
System.out.println("Jenis
= " + Jenis);
}
}
10. Kelas Ular
//kelas Ular
//Turunan dari kelas Reptil, menggunakan "extends" dan
"super"
class Ular extends Reptil {
String Jenis;
public Ular (int rid, String nama, String keterangan, String jenis) {
super (rid, nama, keterangan);
Jenis = jenis;
}
public void Rincian() {
System.out.println("ID =
" + ID);
System.out.println("Nama
Hewan = " + Nama);
System.out.println("Keterangan
= " + Keterangan);
System.out.println("Jenis
= " + Jenis);
}
}
11. Kelas Kobra
//kelas Kobra
//Turunan dari kelas Ular, menggunakan "extends" dan
"super"
class Kobra extends Ular {
public Kobra (int uid, String
nama, String keterangan, String jenis) {
super (uid, nama, keterangan,
jenis);
}
public void Rincian() {
System.out.println("ID =
" + ID);
System.out.println("Nama
Hewan = " + Nama);
System.out.println("Keterangan = " + Keterangan);
System.out.println("Jenis
= " + Jenis);
}
}
12. Kelas Python
//kelas Python
//Turunan dari kelas Ular, menggunakan "extends" dan
"super"
class Python extends Ular {
public Python (int uid, String
nama, String keterangan, String jenis) {
super (uid, nama, keterangan,
jenis);
}
public void Rincian() {
System.out.println("ID =
" + ID);
System.out.println("Nama
Hewan = " + Nama);
System.out.println("Keterangan = " + Keterangan);
System.out.println("Jenis
= " + Jenis);
}
}
Langkah selanjutnya yaitu membuat instansiasi kelas dan pemanggilan
konstruktor pada kelas utama atau main class. Berikut skripnya.
//MAIN CLASS
public class JenisBinatang {
public static void
main(String[] args) {
//instansiasi kelas
//menggunakan "new"
System.out.println("Berikut merupakan jenis-jenis hewan :");
System.out.println("");
Mamalia mamalia = new
Mamalia(001, "Mamalia", "Merupakan Hewan menyusui");
Sapi sapi = new Sapi(011,
"Sapi", "Contoh hewan mamalia", "Pemakan Rumput");
Kucing kucing = new
Kucing(021, "Kucing", "Contoh hewan mamalia", "Pemakan
Daging");
Anjing anjing = new
Anjing(031, "Anjing", "Contoh hewan mamalia", "Pemakan
Daging");
AlaskanMalamute
alaskanmalamute = new AlaskanMalamute(131, "Anjing Alaskan Malamute",
"Salah satu jenis anjing", "Pemakan Daging");
Akita akita = new Akita(231,
"Anjing Akita", "Salah satu jenis anjing", "Pemakan
Daging");
Beagle beagle = new
Beagle(331, "Anjing Beagle", "Salah satu jenis anjing",
"Pemakan Daging");
Reptil reptil = new
Reptil(002, "Reptil", "Merupakan Hewan berdarah dingin");
Buaya buaya = new Buaya(012,
"Buaya", "Contoh hewan reptil", "Pemakan
Daging");
Cicak cicak = new Cicak(022,
"Cicak", "Contoh hewan reptil", "Pemakan
Daging");
Ular ular = new Ular(032,
"Ular", "Contoh hewan reptil", "Pemakan Daging");
Kobra kobra = new Kobra(132,
"Ular Kobra", "Salah satu jenis ular",
"Karnivora");
Python python = new
Python(232, "Ular Python", "Salah satu jenis ular",
"Karnivora");
mamalia.Rincian();
System.out.println("");
sapi.Rincian();
System.out.println("");
kucing.Rincian();
System.out.println("");
anjing.Rincian();
System.out.println("");
alaskanmalamute.Rincian();
System.out.println("");
akita.Rincian();
System.out.println("");
beagle.Rincian();
System.out.println("");
reptil.Rincian();
System.out.println("");
buaya.Rincian();
System.out.println("");
cicak.Rincian();
System.out.println("");
ular.Rincian();
System.out.println("");
kobra.Rincian();
System.out.println("");
python.Rincian();
System.out.println("");
}
}
Lalu compile dan run program tersebut, berikut contoh screenshootnya
selamat mencoba :)
Tidak ada komentar:
Posting Komentar