Teknik Polymorphism pada Pemrograman Java
Menurut teory Polymorphism mempunyai makna sesuatu yang memiliki banyak bentuk, yaitu memiliki nama sama, tetapi memiliki kelakuan (behaviour) yang berbeda. Polymorphism hanya berlaku pada method dan tidak berlaku untuk atribut. Itu menurut teory, tapi kalo menurut saya teory yang akan saya tulis di sini tidak ada jauh berbeda dengan tulisan saya sebelumnya di sini. Bedanya hanya pada peletakaan scriptnya saja, extends tetap saja terpakai dalam teory ini.
Method Overriding
Overriding method adalah kemampuan dari subclass untuk memodifikasi method dari superclass-nya, yaitu dengan cara menumpuk (mendefinisikan kembali) method superclass-nya.
Contoh overriding method dapat dilihat pada class-class turunan dari class Class EkspresiWajah yang mendefinisikan kembali method respon( ) dari class induknya.
Abstract Class
Abstract class adalah class yang terletak pada posisi tertinggi dari hierarki class dan digunakan sebagai acuan (superclass) bagi penurunan class-class lainnya.
Aturan-aturan dalam penggunaan class abstrak sebagai berikut :
1. Method yang tidak memiliki implementasi pada suatu class harus dideklarasikan sebagai abstrak.
2. Tidak dapat membuat instance dari class abstrak, tetapi harus diturunkan terlebih dahulu. Dimana class turunannya harus mengoverride semua method abstrak dari superclassnya dan membuat implementasinya.ok,, dari pada bingung dengan teory-teory yang ada di atas, mending kita menyelesaikan suatu masalah yang ada, karena fungsi dari pemrograman adalah untuk memecahkan masalah, jadi kalo tidak ada masalah untuk apa kita membuat program,,,
berikut adalah masalahnya.Overriding method adalah kemampuan dari subclass untuk memodifikasi method dari superclass-nya, yaitu dengan cara menumpuk (mendefinisikan kembali) method superclass-nya.
Contoh overriding method dapat dilihat pada class-class turunan dari class Class EkspresiWajah yang mendefinisikan kembali method respon( ) dari class induknya.
Abstract Class
Abstract class adalah class yang terletak pada posisi tertinggi dari hierarki class dan digunakan sebagai acuan (superclass) bagi penurunan class-class lainnya.
Aturan-aturan dalam penggunaan class abstrak sebagai berikut :
1. Method yang tidak memiliki implementasi pada suatu class harus dideklarasikan sebagai abstrak.
2. Tidak dapat membuat instance dari class abstrak, tetapi harus diturunkan terlebih dahulu. Dimana class turunannya harus mengoverride semua method abstrak dari superclassnya dan membuat implementasinya.ok,, dari pada bingung dengan teory-teory yang ada di atas, mending kita menyelesaikan suatu masalah yang ada, karena fungsi dari pemrograman adalah untuk memecahkan masalah, jadi kalo tidak ada masalah untuk apa kita membuat program,,,
jadi maksud dari kasus di atas adalah kita akan membuat program untuk memecahkan flowchart di atas dengan menggunakan Teknik Polymorphism pada Pemrograman Java. nah, berikut adalah pemecahan dari masalahnya (scriptnya cuy…) :
SCRIPT superclass :
public abstract class latihan2hewan{
protected static String name;
protected abstract void suara();
protected abstract void jalan();
}
protected static String name;
protected abstract void suara();
protected abstract void jalan();
}
class singa extends latihan2hewan{
public singa (String namesinga){
singa.name=namesinga;
}
public singa (String namesinga){
singa.name=namesinga;
}
public void suara(){ //implementasi dari superclass bigcat
System.out.println(“suara : suara singa itu seperti singa itu sendiri”);
}
System.out.println(“suara : suara singa itu seperti singa itu sendiri”);
}
public void jalan(){ //implementasi dari superclass bigcat
System.out.println(“cara jalan : jalannya singa ini pake kakinya yang ada 4″);
}
}
System.out.println(“cara jalan : jalannya singa ini pake kakinya yang ada 4″);
}
}
class elang extends latihan2hewan{
public elang (String nameelang){
elang.name=nameelang;
}
public void suara(){
System.out.println(“suara : suara elang ga jelas, karena elang terbang”);
}
public void jalan(){
System.out.println(“cara jalan : elang ga bisa jalan, biasanya dia terbang”);
}
}
public elang (String nameelang){
elang.name=nameelang;
}
public void suara(){
System.out.println(“suara : suara elang ga jelas, karena elang terbang”);
}
public void jalan(){
System.out.println(“cara jalan : elang ga bisa jalan, biasanya dia terbang”);
}
}
class lebah extends latihan2hewan{
public lebah (String namelebah){
lebah.name=namelebah;
}
public void suara(){
System.out.println(“suara : suara elang ja ku ga tau, apa lagi lebah”);
}
public void jalan(){
System.out.println(“cara jalan : lebah bisanya terbang aja, kalo jalan ku ga pernah liat”);
}
}
public lebah (String namelebah){
lebah.name=namelebah;
}
public void suara(){
System.out.println(“suara : suara elang ja ku ga tau, apa lagi lebah”);
}
public void jalan(){
System.out.println(“cara jalan : lebah bisanya terbang aja, kalo jalan ku ga pernah liat”);
}
}
class paus extends latihan2hewan{
public paus (String namepaus){
paus.name=namepaus;
}
public void suara(){
System.out.println(“suara : ketemu pausnya aja ga pernah, jadi aku ga tau”);
}
public void jalan(){
System.out.println(“cara jalan : karena paus hidup di air jadi dia renang ga jalan”);
}
}
public paus (String namepaus){
paus.name=namepaus;
}
public void suara(){
System.out.println(“suara : ketemu pausnya aja ga pernah, jadi aku ga tau”);
}
public void jalan(){
System.out.println(“cara jalan : karena paus hidup di air jadi dia renang ga jalan”);
}
}
ingat ya script di atas di simpan dengan nama latihan2hewan.java dan di bawah ini adalah script tampilannya :
public class tampilan
{
public static void main(String argh[])
{
singa tsinga = new singa(“Mamalia”);
System.out.println(“Singa adalah jenis hewan “+singa.name);
System.out.println(“ciri-ciri : “);
tsinga.suara();
tsinga.jalan();
System.out.println();
{
public static void main(String argh[])
{
singa tsinga = new singa(“Mamalia”);
System.out.println(“Singa adalah jenis hewan “+singa.name);
System.out.println(“ciri-ciri : “);
tsinga.suara();
tsinga.jalan();
System.out.println();
elang telang = new elang(“Burung”);
System.out.println(“elang adalah jenis hewan “+elang.name);
System.out.println(“ciri-ciri : “);
telang.suara();
telang.jalan();
System.out.println();
System.out.println(“elang adalah jenis hewan “+elang.name);
System.out.println(“ciri-ciri : “);
telang.suara();
telang.jalan();
System.out.println();
lebah tlebah = new lebah(“Serangga”);
System.out.println(“Lebah adalah jenis hewan “+lebah.name);
System.out.println(“ciri-ciri : “);
tlebah.suara();
tlebah.jalan();
System.out.println();
System.out.println(“Lebah adalah jenis hewan “+lebah.name);
System.out.println(“ciri-ciri : “);
tlebah.suara();
tlebah.jalan();
System.out.println();
paus tpaus = new paus(“Mamalia”);
System.out.println(“Paus adalah jenis hewan “+paus.name);
System.out.println(“ciri-ciri : “);
tpaus.suara();
tpaus.jalan();
System.out.println();
}
}
System.out.println(“Paus adalah jenis hewan “+paus.name);
System.out.println(“ciri-ciri : “);
tpaus.suara();
tpaus.jalan();
System.out.println();
}
}
script ini di simpan dengan nama tampilan.java berikut adalah tampilan dari program di atas :
1 komentar:
:v
Posting Komentar