Filed under: Uncategorized Tinggalkan Komentar April 19, 2012 NAMA : Rama Octa Bosadetaqwa (55410604) KELAS : 2IA14 Link Teman Sekelompok : http://punkadjian.blogspot.com/
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