Minggu, 22 April 2012

Inheritance dan Polymorphism

Pemrograman Berorientasi Objek

Dalam pemrograman berorientasi objek ini terdapat 3 pilar yaitu enkapsulasi, inheritance, dan polymorphism. Akan tetapi disini Saya tidak akan membahas semua melainkan hanya inheritance dan polymorphism.

Inheritance (pewarisan) adalah penurunan fungsi dan attribute suatu class agar dapat digunakan berulang-ulang dengan menambahkan fungsionalitas.
Pewarisan (inheritance),
  • suatu class dapat diturunkan menjadi subclass yang lain untuk menambah fungsionalitas
  • semua attribute dan method dari superclass dapat diwarisi oleh subclass
  • subclass dapat menambahkan attribute dan method yang belum terdapat pada superclass.
contoh :
ada beberapa class, yaitu class pegawai, dosen, administrasi dan dekan.
class pegawai memiliki attribute (npp, nama), methodnya (absen, gajian),
class dosen memiliki attribute (jmlSks) dan methodnya (mengajar),
class administrasi memiliki attribute (unit), methodnya (mendaftarMhs),
class dekan tidak memiliki attribute, dan methodnya (memimpinFak).
disini kita bisa memasukan class dekan di class dosen, sedangkan class dosen dan administrasi di class pegawai. pokoknya sesuai dengan cara pewarisan diatas..

Polymorphism (banyak rupa) adalah pengimplementasian fungsi yang sama dengan cara yang berbeda pada subclass. Ada 2 prinsip didalamnya, yaitu overriding dan overloading.
1. Overriding
Sebuah subclass dapat mengimplementasikan kembali method yang sudah ada pada superclass, maksudnya mendeklarasikan lagi fungsi yang sudah ada pada superclass untuk mendapatkan hasil yang beda.
  •  nama method harus sama
  •  parameter harus sama, dan
  •  terdapat pada subclass.
2. Overloading
Dalam sebuah class diperbolehkan mempunyai method dengan nama yang sama, syaratnya parameter harus beda yaitu jumlah dan tipe datanya.
  • nama method harus sama
  • parameter harus beda
  • terdapat pada class yang sama.
contoh:
class mahasiswa
{
          public void inputData() {......}
          public void inputData (String nim) {.....}
          public void inputData (String nim, String nama) {......}
          public void inputData (int noDaftar) {......}
}


sianau.blogspot.com

Tidak ada komentar:

Posting Komentar