Polimorfisme Polimorfisme adalah Kemampuan suatu object untuk

advertisement
Polimorfisme
Polimorfisme adalah Kemampuan suatu object untuk memiliki bentuk dan wujud berbeda.
atau bisa dibilang sebagai Kemampuan dari variabel referensi object yang memiliki aksi
berbeda bila method yang sama dipanggil, dimana aksi method tergantung dari tipe
objectnya. Ada beberapa hal yang harus dipenuhi dalam polymorphisme, seperti :
1. Method yang dipanggil harus melalui basis class
2. Method yang dipanggil harus menjadi method pada basis class
3. Method access atribute (modifier) pada sub class tidak boleh lebih terbatas dari basis
class
Overloading
Overloading berarti Menuliskan kembali method dengan nama yang sama pada suatu class.
tujuannya adalah memudahkan penggunaan/pemanggilan method dengan fungsionalitas yang
mirip.
Overriding
Overriding digunakan oleh Subclass yang berusaha memodifikasi tingkah laku yang diwarisi
dari superclass. Tujuannya adalah supaya subclass memiliki tingkah laku yang lebih spesifik.
Ini dilakukan dengan cara mendeklarasikan kembali method milik parent class di subclass.
Berikut contoh programnya:
Pada c#
namespace polim
{
class Program
{
public static void Main(string[] args)
{
hewan HEWAN = new hewan();
ayam AYAM = new ayam();
kucing KUCING = new kucing();
HEWAN.suara();
AYAM.suara();
KUCING.suara();
Console.Write("Press any key to continue . . . ");
Console.ReadKey(true);
}
}
class hewan {
public void suara (){
Console.WriteLine("Hewan bersuara :");
}
}
class ayam : hewan {
public void suara(){
Console.WriteLine("Ayam berkokok...!!!");
}
}
class kucing : hewan {
public void suara (){
Console.WriteLine("Kucing mengeong...!!!");
}
}
}
Hasilnya
Pada java
package fispol;
public class suarahewan {
public static void main(String[] args) {
hewan HEWAN = new hewan();
ayam AYAM = new ayam();
kucing KUCING = new kucing();
HEWAN.suara();
HEWAN = AYAM;
HEWAN.suara();
HEWAN = KUCING;
HEWAN.suara();
}
}
class hewan {
public void suara (){
System.out.println("Hewan bersuara :");
}
}
class ayam extends hewan {
public void suara(){
System.out.println("Ayam berkokok...!!!");
}
}
class kucing extends hewan {
public void suara (){
System.out.println("Kucing mengeong...!!!");
}
}
Hasilnya
Pada c++
#include <cstdlib>
#include <iostream>
using namespace std;
class hewan {
public : void suara (){
cout<<"Hewan bersuara :"<<endl;
}
};
class ayam : hewan {
public : void suara(){
cout<<"Ayam berkokok...!!!"<<endl;
}
};
class kucing : hewan {
public : void suara (){
cout<<"Kucing mengeong...!!!"<<endl;
}
};
int main(int argc, char *argv[])
{
hewan HEWAN ;
ayam AYAM ;
kucing KUCING ;
HEWAN.suara();
AYAM.suara();
KUCING.suara();
cout<<endl;
system("PAUSE");
return EXIT_SUCCESS;
}
Hasilnya
Download