Senin, 15 Oktober 2012

Program menghitung Luas PersegiPanjang (Overloading)


Program menghitung Luas PersegiPanjang (Overloading)
1.  Class Pertama
public class PersegiPanjangOverloading  //mendeklarasikan kelas dengan nama PersegiPanjangOverloading
{ //Awal dari sebuah class
    private double panjang ; //menginisialisasi nilai panjang dengan tipe double yang hanya bisa diakses oleh panjang dan turunannya
    private double lebar ; //menginisialisasi nilai lebar dengan tipe double yang hanya bisa diakses oleh lebar dan turunannya
   
    PersegiPanjangOverloading(){ //memanggil nama kelas PersegiPanjangOverloading dengan fungsi Overloading (satu nama memiliki akses yang berbeda)
        panjang = 10; //menginisialisai nilai panjang yaitu 10
        lebar = 2; //menginisialisasi nilai lebar yaitu 2
    }
   
    PersegiPanjangOverloading (double panjang, double lebar){ //kelas yg didalamnya mendklarasikan panjang dan lebar dengan tipe data double
        this.panjang = panjang ; //memanggil variabel panjang
        this.lebar = lebar; //memanggil variabel lebar
    }
   
    public void setpanjang (double panjang){
        this.panjang = panjang ;
    }
   
    public void setlebar (double lebar) {
        this.lebar = lebar ;
    }
   
    public double getpanjang (){ //memanggil nilai panjang dengan tipe data double
        return panjang ; //kembali ke nilai panjang
    }  
    public double getlebar (){ //memanggil nilai lebar dengan tipe data double
        return lebar ; //kembali ke nilai lebar
    }
   
   
    public void hitungluas (){ //perintah untuk menghitung luas
    System.out.println (panjang*lebar); //mencetak hasil menghitung luas yaitu dengan rumus panjang kali lebar
    }
   
    public void hitungluas (double panjang, double lebar) //perintah menghitung luas dengan nilai panjang dan lebar bertipe double
{//Awal dari sebuah method
        setpanjang (panjang); //menginputkan panjang dengan nilai panjang
        setlebar (lebar); //menginputkan lebar dengan nilai lebar
        hitungluas (); //menghitung luas
    }
}
2.  Class Kedua
public class methodPPOverloading //mendeklarasikan kelas, dengan nama methodPPOverloading
{
    public static void main (String []args)  //method utama untuk mengeksekusi program dibawahnya
    {
        PersegiPanjangOverloading A = new PersegiPanjangOverloading(); //merupakan objek baru A dari kelas PersepiPanjangOverloading
        A.hitungluas (); //perintah untuk menghitung luas pada objek A dengan nilai yg sudah ditentukan dari kelas PersepiPanjangOverloading
        A.hitungluas (5,3); //menghitung luas dengan panjang dan lebar yang sudah ditentukan program pada objek A
    PersegiPanjangOverloading B = new PersegiPanjangOverloading(); //merupakan objek baru B dari kelas PersepiPanjangOverloading
        B.hitungluas(); //perintah untuk menghitung luas pada objek B dengan nilai yg sudah ditentukan dari kelas PersepiPanjangOverloading
    PersegiPanjangOverloading C = new PersegiPanjangOverloading (); //merupakan objek baru C dari kelas PersepiPanjangOverloading
        C.setpanjang(8); //menginputkan panjang dengan nilai 8
        C.setlebar (4); //menginputkan lebar dengan nilai 4
        C.hitungluas (); //perintah menghitung luas pada objek c dengan memanggil nilai yg ada pada objek C yaitu 8 dan 4
        C.hitungluas(A.getpanjang(), B.getlebar()); //menghitung luas dari objek C dengan memanggil panjang dari objek A dan lebar dari objek B
    }
}
3.  Penjelasan Program
Program tersebut mempunyai class yang bernama PersegiPanjangOverloading dan memiliki method yaitu pada class MethodPPOverloading. Yang berisi beberapa fungsi yaitu sebagai berikut :
PersegiPanjangOverloading (double panjang, double lebar){ //kelas yg didalamnya mendklarasikan panjang dan lebar dengan tipe data double public void setpanjang (double panjang) digunakan untuk mengisi variable panjang dengan tipe data double.
public void setlebar (double lebar)untuk mengisi variable lebar dengan tipe data double.
public double getpanjang ()untuk mengambil data dari variable panjang dengan tipe data double
public double getlebar ()untuk mengambil data dari variable lebar  dengan tipe data double.
public void hitungluas (double panjang, double lebar)untuk menghitung variable luas.

public static void main (String []args)  //method utama untuk mengeksekusi program dibawahnya (class main pada MethodPPOverloading
PersegiPanjangOverloading A = new PersegiPanjangOverloading //merupakan objek baru A dari kelas PersepiPanjangOverloading
Dalam program tersebut ada 3 kali perintah tersebut, namaun objek baru pada setiap perintah yang dipanggil berbeda-beda. Yaitu menggunakan objek A, B dan C. nama objek tersebut bersifat bebas tetapi harus mempunyai implementasi dari overloading (new overloading).
Program tersebut menggunakan perintah overloading yaitu satu nama yang sama tapi menghasilkan suatu aksi yang berbeda.
Perintahnya sebagai berikut :
PersegiPanjangOverloading()
Penggunaannya hampir sama dengan constrktor, yaitu menggunakan perintah dengan nama sesuai dengan nama classnya yaitu PersegiPanjangOverloading. Overloading method dapat digunakan ketika kita mempunyai operasi yang sama namun berbeda implementasinya.
Dan saat kita menggunakan Overloading, hal yang harus diiperhatikan yaitu :
a.    Nama method sama
b.    Parameter berbeda (baik tipe maupun jumlahnya)
c.    Tipe data nilai kembalian dapat berbeda atau sama
Output Program

Tidak ada komentar:

Posting Komentar