Program
menghitung Luas BujurSangkar (Construktor)
Ø Class Pertama
public
class cobaBujurSangkar //mendeklarasikan kelas dengan nama cobaBujurSangkar
{ //awal dari sebuah class
private double sisi ;//menginisialisasi nilai sisi
dengan tipe double yang hanya bisa diakses oleh sisi dan turunannya
cobaBujurSangkar(){//perintah construktur
System.out.println("Construktor
dijalankan");//mencetak hasil yaitu Construktor dijalankan
sisi = 1;//agar jika user tidak menginputkan nilai,
maka program akan mengeluarkan hasil 1
}
public void setsisi (double sisi){
if (sisi>0){//perintah agar sisi harus bernilai lebih
dari 0
this.sisi = sisi ;//untuk
memanggil variabel sisi
}
}
public void hitungluas() {//Perintah
menghitung luas
System.out.println (sisi*sisi); //mencetak
hasil yaitu dengan sisi kali sisi
}
void hitunghasil() {
}
} //akhir dari
sebuah class
Ø Class Kedua
public class methodcobabujursangkar //mendeklarasikan kelas, dengan nama methodcobabujursangkar
{//awal dari
sebuah blok baru
public static void main (String []args) {//method
utama untuk mengeksekusi program dibawahnya
cobaBujurSangkar jklm = new cobaBujurSangkar();//merupakan objek baru jklm dari kelas cobaBujurSangkar
jklm.setsisi(4);//menginputkan sisi
dengan nilai 4
jklm.hitunghasil();//perintah untuk
menghitung luas pada objek jklm
}
}//akhir dari sebuah
class
Ø Penjelasan Program
Program
tersebut mempunyai class yang bernama cobaBujurSangkar dan memiliki method
yaitu pada class methodcobabujursangkar. Yang berisi beberapa fungsi yaitu
sebagai berikut :
public void setsisi (double sisi) //untuk mengisi variable sisi dengan tipe data double
public void hitungluas() //untuk menghitung variable luas
public static void main (String []args) //class main pada
methodcobabujursangkar
jklm.setsisi(4);
//memanggil class
cobabujursangkar dengan nama bujursangkar jklm
dengan menjalankan method setsisi(4), yang berisi nilai 4 yg bertipe
data integer
jklm adalah sebuah nama bujur sangkar
yang bersifat bebas (jadi dapat digantikan dengan nama lain). Tapu harus
mempunyai pernyataan bahwa jklm adalah sebuah implementasi dari cobabujursangkar
(new cobapersegipanjang).
Dalam program ini menggunakan perintah
Construktor yaitu perintahnya sebagai berikut :
cobaBujurSangkar(){//perintah
construktur
System.out.println("Construktor
dijalankan");//mencetak hasil yaitu Construktor
dijalankan
Pada perintah constructor tersebut
harus menggunakan nama sesuai dengan nama class yang telah dibuat. Dalam
program ini yaitu cobaBujurSangkar. Lalu diikuti dengan perintah mencetak hasil
yaitu “Construktor dijalankan”
Program
menghitung Luas PersegiPanjang (Overloading)
Ø 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
} //akhir dari sebuah method
} //akhir dari sebuah class
Ø Class Kedua
public
class methodPPOverloading //mendeklarasikan kelas, dengan nama methodPPOverloading
{//awal dari
sebuah class
public static void main (String
[]args) //method utama untuk mengeksekusi program
dibawahnya
{ //awal dari sebuah method
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
} //akhir dari sebuah method
} //akhir dari
sebuah class
Ø 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