RSS

Daily Archives: April 19, 2012

Polimorphisme pada Java

Assalamualaikum.. Salam sejahtera untuk kita semua insan terbaik di alam semesta πŸ™‚
langsung saja saya mulai pembahasanya..

Polimorfisme merupakan konsep pokok didalam perancangan orientasi objek. Polymorphisme berarti mempunyai banyak bentuk. Dua objek atau lebih dikatakan sebagai polymorphic bila objek-objek itu mempunyai antarmuka-antarmuka yang identik namun mempunyai perilaku-perilaku berbeda. Polymorphisme berupa satu nama tunggal (seperti deklarasi fungsi) dan dapat menyatakan objek-objek kelas-kelas berbeda yang terhubung dengan satu super kelas yang common diantara kelas-kelas itu. Sembarang objek ditandai dengan nama ini akan dapat menanggapi sekumpulan operasi yang common.

 

Polymorphisme merupakan fitur yang ada karena interaksi konsep pewarisan dan dynamic binding. Polymorphisme merupakan fitur penting dan ampuh bahasa pemrograman orientasi objek. Kepentingannya merupakan peringkat kedua setelah dukungan terhadap abstraksi orientasi objek. Fitur ini merupakan pembeda orientasi objek dari bahasa tradisional yang hanya sampai pada tipr data abstrak. Bahasa yang tidak mendukung polymorphisme belum layak disebut bahasa pemrograman orientasi objek, paling-paling bahasa disebut bahasa berbasis objek bila telah mendukung pengapsulan.

 

Polymorphisme memungkinkan kita mengenali dan mengeksploitasi keserupaan-keserupaan di antara kelas-kelas berbeda. Ketika kita mengenali bahwa beberapa jenis objek dapat menanggapi pesan yang sama. Kita mengenali tidak adanya pembeda antara nama pesan dan metode. Objek mengirim pesan, jika penerima mengimplementasikan metode dengan penanda sama maka objek itu akan memberi tanggapan khas. Tanggapan-tanggapan berbeda dimungkinkan, metode-metode yang berbeda dari instan kelas-kelas berbeda. Pengiriman cukup menerima pesan, tidak perlu peduli dengan kelas dari objek pertama.

Berikut adalah contoh syntaxnya:

– Pertama kita membuat kelas Kendaraan


//Class kendaraan.java

public class Kendaraan {

private int posisi;

public Kendaraan(int posisi) {
this.posisi = posisi;
}

public void Move() {
return;
}

public int getPosisi() {
return posisi;
}

public void setPosisi(int posisi) {
this.posisi = posisi;
}
}

– kemudian kita membuat kelas motor sebagai subkelas dari kelas kendaraan


//Class motor.java

public class Motor extends Kendaraan {

public Motor(int posisi) {
super(posisi);
}

@Override
public void Move() {
setPosisi(getPosisi() + 30);
}
}

– Kita tambahkan satu subkelas lagi dari kelas Kendaraan yaitu kelas Mobil


public class Mobil extends Kendaraan {

public Mobil(int posisi) {
super(posisi);
}

@Override
public void Move() {
setPosisi(getPosisi() + 70);
}
}

– Kemudian kita buat satu subkelas lagi yaitu kelas Pesawat


//Class pesawat.java

public class Pesawat extends Kendaraan {

public Pesawat(int posisi) {
super(posisi);
}

@Override
public void Move() {
setPosisi(getPosisi() + 300);
}
}

– kemudian kita buat kelas utama yaitu kita dengan nama Kelas Main


//Class Main.java

public class Main {

public static void main(String[] args) {

Kendaraan kendaraan[] = new Kendaraan[3];
int posisi = 10;
kendaraan[0] = new Motor(posisi);
kendaraan[1] = new Mobil(posisi);
kendaraan[2] = new Pesawat(posisi);
System.out.println("Intansiasi 3 Object Turunan Class Kendaraan");
System.out.println(" -kendaraan[0] merupakan instantsiasi dari class "
+ "Motor dengan posisi awal " + posisi);
System.out.println(" -kendaraan[1] merupakan instantsiasi dari class "
+ "Mobil dengan posisi awal " + posisi);
System.out.println(" -kendaraan[2] merupakan instantsiasi dari class "
+ "Pesawat dengan posisi awal " + posisi);

for (int i = 0; i < kendaraan.length; i++) {
System.out.println("Object [" + i + "] memanggil method move");
System.out.println("Posisi sebelum method move() dipanggil : " + kendaraan[i].getPosisi());
kendaraan[i].Move();
System.out.println("Posisi setelah method move() dipanggil : " + kendaraan[i].getPosisi());
System.out.println();
}

}
}

Maka outputnya akan seperti ini:

 
Leave a comment

Posted by on April 19, 2012 in Java, Pemograman

 

Tags: , , , ,

Pewarisan (inheritance) pada Java

Salam super kawan!! (hhehe kata-katanya Mario Teguh) . Semakin dalam memperlajari tentang konsep pemograman berbasis objek,saya menjadi semakin tertarik untuk mempelajarinya. terutama karena fleksiblelitas dari pemograman OOP tersebut. kali ini tulisan saya akan membahas tentang Pewarisan (inheritance) pada bahasa pemograman java. untuk lebih jelasnya langsung saja kita bahas πŸ™‚

Pewarisan

Pewarisan adalah salah satu konsep penting dalam pemograman berbasis objek dan mempunyai dampak langsung pada cara merancang dan menulis kelas. Pewarisan merupakan suatu proses penciptaan kelas baru dengan mewarisi karakteristik kelas yang telah ada, ditambah karakteristik unik kelas baru tersebut. Pewarisan adalah mekanisme yang ampuh dengan memungkinkan kelas mewarisi fungsionalitas kelas yang telah ada. Untuk menciptakan kelas baru, kita hanya perlu menspesifikasikan cara kelas itu berbeda dari kelas yang telah ada. Pewarisan merupakan mekanisme yang ampuh dan alami untuk mengorganisasikan program. Dalam terminologi Java, kelas yang diwarisi disebut dengan superkelas,sedangkan kelas yang mewarisi disebut subkelas. dengan demikian, subkelas adalah versi spesial dari superkelas. Subkelas mewarisi semua metode dan variabel superkelasnya. secara praktis berarti jika superkelas telah didefinisikan kelas yang kita perlukan maka kitak tidak harus mendefinisikan ulang source code dari kelas lain. Superkelas secara otomatis memberi perilakunya ke subkelas pewaris. Berikut adalah contoh programnya:

– Pertama kita buat dulu superkelasnya


public class Manusia {

String nama;
int umur;
String pekerjaan;

public Manusia(String nm, int um, String pkj) {
this.nama = nm;
this.umur = um;
this.pekerjaan = pkj;
}

public String tampilkanNama() {
return nama;
}

public int tampilkanUmur() {
return umur;
}

public String tampilkanPekerjaan() {
return pekerjaan;
}

public void olahraga() {
System.out.println("Futsal");
}

public void kerja() {
System.out.println(" ");
}
}

– Kemudian buat subkelas pertama


public class Programmer extends Manusia{

public Programmer(String nm4, int um4, String pkj4) {
super(nm4, um4, pkj4);
}

@Override
public void kerja() {
System.out.println("tik tak tok");
}
}

– kemudian kita buat kelas main nya (kelas utama)


public class main {

public static void main(String args []){
Manusia orang1 = new Programmer("Taufiq Ramadhan", 20, "Programmer");
System.out.println("Nama :"+orang1.tampilkanNama());
System.out.println("Umur :"+orang1.tampilkanUmur());
System.out.println("Profesi :"+orang1.tampilkanPekerjaan());
System.out.print("Hobby: ");
orang1.olahraga();
orang1.kerja();
}
}

outputnya adalah seperti ini:

 
Leave a comment

Posted by on April 19, 2012 in Java, Pemograman

 

Tags: , , ,