Tuesday, July 22, 2014

Method dan Constructor Overloading

Definisi Overloading :
Overloading adalah deklarasi lebih dari satu metode ataupun konstruktor dengan nama yang sama, tetapi memiliki kegunaan yang berbeda.

Ketentuan Overloading : 
1. Jumlah argumen dan urutan tipe data yang digunakan berbeda.
2. Jumlah argumen berbeda, meskipun tipe data yang digunakan sama.
3. Urutan tipe data yang digunakan berbeda, meskipun jumlah argumen sama.

Metode Overloading :
Metode Overloading adalah deklarasi lebih dari satu metode dengan nama yang sama, tetapi memiliki kegunaan yang berbeda.
Contoh Metode Overloading :
public void metOver(int a) {}
public void metOver(int a, double b) {}
public void metOver(double a, int b) {}
public void metOver(int a, int b, double c) {}
//public void metOver(int b) {} SALAH karena metode metOver() dengan argumen dan tipe data (int) sudah ada yaitu metOver(int a) {}
//public void metOver(int x, int y, double z) {} SALAH karena metode metOver() dengan argumen dan tipe data (int,int,double) sudah ada yaitu metOver(int a, int b, double c) {}

Konstruktor Overloading :
Konstruktor (Constructor) adalah metode yang memiliki nama yang sama dengan nama kelas. Biasanya konstruktor dipanggil ketika membuat objek dari sebuah kelas. Seingga bisa dibilang bahwa konstruktor merupakan metode yang pertama kali dipanggil atau dikerjakan ketika terdapat pembuatan objek dari kelas tersebut. dan bisa juga dibilang bahwa konstruktor merupakan metode inisialisasi dari instansiasi kelas menjadi objek.
Contoh Konstruktor Overloading :
class LuasSegitiga {
private double alas;
private double tinggi;
public LuasSegitiga() {} //konstruktor default
public LuasSegitiga(double alas) {} //konstruktor
public LuasSegitiga(double alas,double tinggi) {} //konstruktor
}

Memanggil konstruktor menggunakan metode this() :
Konstruktor bisa memanggil konstruktor lainnya. Metode this() merupakan metode yang digunakan untuk konstruktor memanggil konstruktor lain pada kelas yang sama.
Contoh penggunaan metode this() :
public class arfThis{
public arfThis() {
this("Andrian Ramadhan","Sistem Informasi 8");
System.out.println("Universitas Komputer Indonesia");
}
public arfThis(String nama, String kelas) {
System.out.println("Nama     : "+nama);
System.out.println("Kelas     : "+kelas);
}
public static void main(String[]args) {
arfThis arf = new arfThis();
}
}


Contoh Kasus :
Buatlah sebuah program untuk menghitung volume bangun ruang. Bangun ruang yang akan dihitung adalah kubus, balok, dan tabung!
Berikut ketentuan untuk program yang harus dibuat :
1. Buatlah tiga buah method overloading.
- volume(int s)
- volume(int p,int l, int t)
- volume(double pi, int r, int t).
2. Metode volume(int s) digunakan untuk menghitung volume kubus dengan rumus volume=s*s*s.
3. Metode volume(int p,int l, int t) digunakan untuk menghitung volume balok dengan rumus volume=p*l*t.
4. Metode volume(double pi, int r, int t) digunakan untuk menghitung volume tabung dengan rumus volume=pi*r*r*t.
Tampilan Output :
Volume kubus dengan s=5                            : 125
Volume Balok dengan p=2, l=3, t=4              : 24
Volume Tabung dengan pi=3.14, r=10, t=2   : 628.0

Download source code
Download .pdf

No comments:

Post a Comment

Untuk bertanya seputar postingan kami diblog ini silahkan tanya di fb fanpage kami ..

Note: Only a member of this blog may post a comment.