Anda di halaman 1dari 11

Inheritance & Polimorfisme

Filed under: Uncategorized Tinggalkan Komentar April 19, 2012 NAMA : Rama Octa Bosadetaqwa (55410604) KELAS : 2IA14 Link Teman Sekelompok : http://punkadjian.blogspot.com/

Pengertian & Contoh Program Inheritance


Pengertian Inheritance (Pewarisan) adalah salah satu bentuk penggunaan kembali perangkat lunak dimana suatu kelas baru dibuat dari kelas yang sudah ada dengan memakai variabel data fungsi (method) dari kelas yang sudah

ada tersebut serta menambah atribut/pelaku yang baru, kelas baru otomatis memiliki variabel atau fungsi yang dimiliki kelas asal. Contoh Program: class A { private int a; public void setA(int nilai) { a = nilai; } public int getA() { return a; } } // membuat kelas turunan (subclass) dari kelas A class B extends A { private int b;

public void setB(int nilai) { b = nilai; } public int getB() { return b; } } // membuat kelas turunan (subclass) dari kelas B class C extends B { private int c; public void setC(int nilai) { c = nilai; } public int getC() { return c; } } class DemoKelasTurunan { public static void main(String[] args) {

// melakukan instansiasi terhadap kelas C C obj = new C(); // mengeset nilai dari kelas C obj.setA(100); obj.setB(200); obj.setC(300); // mendapatkan nilai yang terdapat dalam kelas C System.out.println(Nilai a : + obj.getA()); System.out.println(Nilai b : + obj.getB()); System.out.println(Nilai c : + obj.getC()); } } OUTPUT

Pengertian & Contoh Program Polimorfisme Polimorfisme adalah kemampuan suatu objek untuk mengungkap banyak hal melalui satu cara yang sama. Sebagai contoh, terdapat kelas A yang diturunkan menjadi kelas B, C, dan D. Dengan konsep polimorfisme, kita dapat menjalankan method-method yang terdapat pada kelas B, C, dan D hanya dari objek yang diinstansiasi dengan kelas A. Polimorfisme sering dinamakan dengan dynamic binding, late binding, maupun runtime binding. Java mengimplementasikan polimorfisme dengan 2 cara, yaitu: 1. Methode overloading 2. Methode overriding dengan pewarisan Contoh Program // Mendefinisikan kelas induk class Bentuk { public double luas() { System.out.println(Tidak

didefinisikan); return 0; } } class PersegiPanjang extends Bentuk { private double panjang; private double lebar; PersegiPanjang(int p, int l) { panjang = p; lebar = l; } public double luas() { System.out.println(Dalam objek persegi panjang:); return (panjang * lebar); } } class BujurSangkar extends Bentuk { private double sisi;

BujurSangkar(int s) { sisi = s; } public double luas() { System.out.println(Dalam objek bujursangkar:); return (sisi * sisi); } } class Segitiga extends Bentuk { private double alas; private double tinggi; Segitiga(int a, int t) { alas = a; tinggi = t; } public double luas() { System.out.println(Dalam objek segitiga:); return ((alas * tinggi)/2);

} } class Lingkaran extends Bentuk { private double jarijari; private final double PI = 3.1416; Lingkaran(int r) { jarijari = r; } public double luas() { System.out.println(Dalam objek lingkaran:); return (PI * jarijari * jarijari); } } class DemoPolimorfisme2 { public static void main(String[] args) { Bentuk obj;

PersegiPanjang pp = new PersegiPanjang(5, 3); BujurSangkar bs = new BujurSangkar(4); Segitiga st = new Segitiga(4, 3); Lingkaran lk = new Lingkaran(2); // obj mengacu pada objek PersegiPanjang obj = pp; // akan memanggil method yang terdapat pada PersegiPanjang System.out.println(Luas : + obj.luas()); System.out.println(); // obj mengacu pada objek PersegiPanjang obj = bs; // akan memanggil method yang terdapat pada BujurSangkar System.out.println(Luas : + obj.luas()); System.out.println();

// obj mengacu pada objek PersegiPanjang obj = st; // akan memanggil method yang terdapat pada Segitiga System.out.println(Luas : + obj.luas()); System.out.println(); // obj mengacu pada objek PersegiPanjang obj = lk; // akan memanggil method yang terdapat pada Lingkaran System.out.println(Luas : + obj.luas()); System.out.println(); } }

Output

Sumber Referensi: Buku java penerbit Informatika

Anda mungkin juga menyukai