Jumat, 15 Agustus 2014

Polymorphism

Polymorphism
         Fitur Powerfull di Jawa selain warisan dan enkapsulasi (prinsip OOP).
         Obyek yang memiliki banyak bentuk.
         1 fungsi dengan banyak implementasi.
         Efisien dan kurang redundansi
         Menggunakan Metode Abstrak dan Abstrak Kelas
Trivial VS Pure Polymorphism
         Trivial Polymorphism: Overloading
         Menangani saat kompilasi.
         Static Binding.
         Pure Polymorphism: Overriding
         Menangani saat runtime.
         Dinamis Binding.
         Jenis Instance menentukan metode yang akan digunakan
Type Polymorphism
         Ada 2 jenis Polymorphism berdasarkan waktu :
1.      Static (Compile Time), dapat melalui:
§  Generic
§  Overload
2.      Dynamic ( Run Time ) , dapat melalui :
§  Class
         Inheritance
         Abstract
§  Interface
Dynamic Binding
         Implementasi yang digunakan akan ditentukan secara dinamis oleh Java Virtual Machine pada saat runtime.
         Keuntungan:
        Memungkinkan kelas baru yang akan dimuat tanpa mengkompilasi ulang.
        Pengembang tidak perlu membuat dan pengguna tidak harus menginstalnya.
        Versi utma perangkat lunak.
        Fitur baru dapat ditambahkan transparan jika diperlukan.
Contoh Polymorphism

ComputeArea () fungsi adalah metode polimorfisme dari kelas Shape yang diganti di kelas Rectangle dan Circle.
Casting Object
         Konversi objek dari kelas ke kelas jenis lain dalam hirarki inheritance.
         Ada 2 jenis Casting Obyek:
        Implicit Casting
Object o = new Student();  //Implicit casting
m(o) , where function m is m( new Student )
        Explicit Casting
Student b = (Student) o;  // Explisit casting
Error if :
                        Student b = o;  
ß Error Casting
karena obyek Mahasiswa adalah turunan dari kelas Object, tapi kelas Object bukan merupakan contoh dari class Student.
         Untuk memeriksa apakah sebuah objek adalah obyek kelas dibandingkan, kita dapat menggunakan "instanceof".


Tidak ada komentar:

Posting Komentar