Welcome to Scribd, the world's digital library. Read, publish, and share books and documents. See more
Download
Standard view
Full view
of .
Save to My Library
Look up keyword
Like this
6Activity
0 of .
Results for:
No results containing your search query
P. 1
Polimorphism

Polimorphism

Ratings: (0)|Views: 383 |Likes:
Published by rosani

More info:

Published by: rosani on Nov 21, 2009
Copyright:Attribution Non-commercial

Availability:

Read on Scribd mobile: iPhone, iPad and Android.
download as DOC, PDF, TXT or read online from Scribd
See more
See less

04/28/2013

pdf

text

original

 
Polimorphism
Polimorphism bisa diartikan sebagai suatu object yang dapat memiliki berbagai bentuk,sebagai object dari classnya sendiri atau object dari superclassnyaPolimorphism ada 2 macam;1.Overloading, Penggunaan satu nama untuk beberapa method yang berbeda parameter 2.Overriding, Terjadi ketika deklarasi method subclass sama dengan method darisuperclassnya
OVERLOADING
Dalam sebuah kelas diperbolehkan ada lebih dari satu method dengan nama yangsama dengan catatan methods dapat dibedakan berdasarkan banyaknya parameter atau tipe data parameter formalclass Lingkaran {double r;Lingkaran (double r) {this.r = r;}double Luas() {return Math.PI*this.r*this.r;}double Luas (double r) {//overloading method Luas() beda signaturethis.r = r;return Math.PI*this.r*this.r;}double Luas (int r) {//overloading method Luas() beda signatureSystem.out.println(”tipe data harus double. r tidak diubah!”);return Math.PI*this.r*this.r;}double Luas (double r, double PI) {
 
//overloading method Luas() beda signaturethis.r = r;return PI*this.r*this.r;}}
Overloading tidak bisa dilakukan dengan membedakan nilai kembaliannyaclass Lingkaran {double r;Lingkaran (double r) {this.r = r;}double Luas() {return Math.PI*this.r*this.r;}}
Overloading juga bisa dilakukan pada sub kelasnyaclass Lingkaran {double r;Lingkaran(double r) {this.r = r;}double Luas() {return Math.PI*this.r*this.r;}double Luas(double r) {//overloading method Luas() beda signaturethis.r = r;return Math.PI*this.r*this.r;
 
}double Luas(int r) {//overloading method Luas() beda signatureSystem.out.println(”tipe data harus double. r tidak diubah!”);return Math.PI*this.r*this.r;}double Luas(double r, double PI) {//overloading method Luas() beda signaturethis.r = r;return PI*this.r*this.r;}}class Tabung extends Lingkaran {double h;Tabung() {super(0);//konstruktor kelas turunan, ada keyword super()//diisi nilai awal}double Luas(double r, double PI, double h) {//overloading method Luas() beda signaturethis.r = r;return PI*this.r*this.r*this.h;}}Overloading method dapat digunakan ketika kita mempunyai operasi yang sama namun berbeda implementasinya. Yang terpenting dalam melakukan ini, nama method harussama, tapi mempunyai parameter yang berbeda. Terserah berbeda dari segi tipe datanyaatau jumlah parameternya. Tergantung kebutuhan untuk implementasi dan nilaikembaliannya. Jadi yang perlu diingat saat melakukan overloading method:• Nama method sama

Activity (6)

You've already reviewed this. Edit your review.
1 hundred reads
1 thousand reads
Uchie Assyarof liked this
Abdhie Hevel Nd liked this
zhey liked this
Rock Mystyle liked this

You're Reading a Free Preview

Download
/*********** DO NOT ALTER ANYTHING BELOW THIS LINE ! ************/ var s_code=s.t();if(s_code)document.write(s_code)//-->