Nama / NIM : Ni Putu Tias Amarwati / 1404505041
Jurusan / Fakultas / Universitas : Teknologi Informasi / Teknik / Universitas Udayana
Mata Kuliah : Pemrograman Berorientasi Objek (B)
Dosen : I Putu Agus Eka Pratama, ST MT
Jurusan / Fakultas / Universitas : Teknologi Informasi / Teknik / Universitas Udayana
Mata Kuliah : Pemrograman Berorientasi Objek (B)
Dosen : I Putu Agus Eka Pratama, ST MT
Overloading dan Overriding, keduanya merupakan class yang memiliki nama method yang sama. Namun pada overloading dan overriding memiliki kesamaan dan perbedaan yang dapat dilihat dari parameternya.
Overriding
Overriding memiliki method yang namanya sama namun
berbeda class. Method pertama adalah method yang berasal dari class induk
dengan parameter yang sama dengan method pada class anak. Pada Overriding nama
method dan parameternya pada kedua classnya harus sama. Di bawah ini adalah
contoh overriding.
Contoh
1 :
Class
OverRiding {
public void MethodAsli ( ) {
System.out.println(“
Method milik class OverRiding dijalankan “);
}
Public
static void main (String [ ] args) {
OverRiding O = new OverRiding ( ) ;
}
}
Class
SubOverRiding extends OverRiding {
public void MethodAsli ( ) {
System.out.println(“
Method milik class OverRiding dijalankan “);
}
}
Pada kedua
kelas di atas jelas terlihat bahwa method “ Method Asli” yang diturunkan dari
class OverRiding memilki kesamaan dari segi nama,parameter dan juga
implementasinya.
contoh 2
/*
* To change this
license header, choose License Headers in Project Properties.
* To change this
template file, choose Tools | Templates
* and open the
template in the editor.
*/
package nama;
/**
*
* @author axioo
*/
public class Nama {
public
void Sapa(){
System.out.println("Ni Putu Tias Amarwati");
}
public
static void main(String [] args){
Siapa ss;
Nama nn;
ss = new
Siapa();
nn = new
Nama();
ss.Sapa();//memanggil method Sapa() pada class Siapa
nn.Sapa();//memanggil method Sapa() pada class Nama
}
}
class Siapa extends Nama{
//Method Sapa() pada class Nama di override
public
void Sapa(){
System.out.println("Tias");
}
}
Pada kedua
kelas di atas jelas terlihat bahwa method “ Sapa()” pada superclass “Nama”
dioverride di subclass “Siapa” memilki kesamaan dari segi nama parameter(gambar
dibawah ini) namun perbedaan pada implementasinya yaitu dalam mencetak kalimat
yang berbeda
OVERLOADING
Method yang mempunyai nama yang sama namun mempunyai parameter yang berbeda. Dalam oveloading harus sebuah method harus mempunyai parameter berbeda (baik tipe maupun jumlahnya). Tipe data nilai kembalian dapat berbeda atau sama.Merupakan pendukung sifat Polymorphisme. Dan semua method dapat di-overloading termasuk constructor
Dalam sebuah kelas diperbolehkan ada lebih dari satu method dengan nama yang sama dengan catatan methods dapat dibedakan berdasarkan banyaknya parameter atau tipe data parameter formal
Contoh Overloading :
Method yang mempunyai nama yang sama namun mempunyai parameter yang berbeda. Dalam oveloading harus sebuah method harus mempunyai parameter berbeda (baik tipe maupun jumlahnya). Tipe data nilai kembalian dapat berbeda atau sama.Merupakan pendukung sifat Polymorphisme. Dan semua method dapat di-overloading termasuk constructor
Dalam sebuah kelas diperbolehkan ada lebih dari satu method dengan nama yang sama dengan catatan methods dapat dibedakan berdasarkan banyaknya parameter atau tipe data parameter formal
Contoh Overloading :
class
Segitiga {
public
Segitiga(double panjang) {
System.out.println(“\nVariabel
= segitiganya sama sisi “);
System.out.println(“Panjang
= “ +panjang);
Keliling(panjang);
Public Segitiga(double sisiMiring){
System.out.println(“\n2Variabel
= segitiganya sama kaki”);
System.out.println(“Panjang
= “ +panjang+ “sisi miring = “ +sisiMiring);
Keliling (panjang, sisiMiring);
Dapat
dilihat pada contoh di atas bahwa terdapat 2 method dengan nama sama “
segitiga” memiliki parameter berbeda. Inilah yang disebut Overloading.
Sumber:
http://sufroni.blogspot.com/2010/05/inheritance-polimorphisme-dan-contoh.html
0 komentar:
Posting Komentar