Inheritance merupakan suatu pewarisan/penurunan yang bertujuan membuat class baru dengan method dari class yang sudah ada serta menambah atribut yang baru, class baru otomatis memiliki variabel dan fungsi yang sama dengan class asalnya.
class induk:
public class portable{
void portableconsole(){
System.out.println("Portable console adalah console yang bisa dimainkan dimana saja");}}
class turunan:
class psp extends portable{
void Spesifikasipsp(){
System.out.println("portable console yang anda pilih adalah psp");
System.out.println("Dimensi. 16.94 x 1.86 x 7.14 cm");
System.out.println("Berat 0.189 kg");
System.out.println("Memori utama 64MB");
System.out.println("Display 4.3 inches (16:9) full-transparent type, TFT");
System.out.println("480 x 272 pixel, 16.770.000 warna");}}
class nds extends portable{
void Spesifikasinds(){
System.out.println("portable console yang anda pilih adalah nds");
System.out.println("Dimensi : 148.7 x 84.7 x 28.9 mm / 133 mm x 73.9 mm x 21.5 mm");
System.out.println("Berat : 275 g / 218 g");
System.out.println("Baterai : 850 mAH / 1000 mAH");
System.out.println("2 layar 3-inch TFT LCD 256 x 192 pixels, 62 x 46 mm");}}
import java.io.*;
class pilihportable{
public static void main(String[]args)throws IOException{
String pilih = null;
System.out.println("____Pilih console____");
System.out.println("[1] PSP");
System.out.println("[2] NDS");
System.out.print("Masukkan pilihan :");
portable generalj = new portable();
psp jenis1 = new psp();
nds jenis2 = new nds();
InputStreamReader inputan = new InputStreamReader(System.in);
BufferedReader jm = new BufferedReader(inputan);
pilih = jm.readLine();
int i = Integer.parseInt(pilih);
switch (i) {
case 1 :
generalj.portableconsole ();
jenis1.Spesifikasipsp ();break;
case 2 :
generalj.portableconsole ();
jenis2.Spesifikasinds ();break;}}}
Output Program
Polymorphisme merupakan konsep yang menyatakan sesuatu yang sama dapat memiliki berbagai bentuk dan perilaku yang berbeda. Polymorphisme memiliki 2 jenis, yaitu :
- Overload adalah beberapa metode dapat memiliki nama yang sama dengan isi dan parameter yang berbeda, syarat overload yaitu nama metode dan parameter harus berbeda.
- Override adalah sebuah class dapat memiliki sebuah metodevirtual sebagai antarmuka dari metode yang diimplementasikan class turunannya, syaratnya yaitu nama metode, return type, dan parameter harus sama.
Contoh program Polymorphisme
class keterangan {
public void ket(String Cetak) {
System.out.println(Cetak);}
public void ket(int Cetak) {
System.out.println(Cetak);}}
public class datamahasiswa {
public static void main(String[] args) {
keterangan data = new keterangan();
System.out.print("Nama : ");
data.ket("Jonathan Mardi Halim");
System.out.print("NPM : ");
data.ket(53410776);}}
Output Program
sumber : http://nur-arianto.blogspot.com/2009/11/inheritance-pada-java.html
http://betoi.blogspot.com/2010/06/polymorphism-java.html
http://harrach.wordpress.com/pemograman-java/polymorphism/