public class bank {
private int saldo; // variabel yang dienkapsulasi
public void setSaldo (int uang) { //metode untuk merubah nilai variabel saldo
saldo+=uang;
}
public int getSaldo(){ //method untuk mengambil nilai variabel saldo
return saldo;
}
}
2. membuat class nasabah
public class nasabah {
private bank bank; //mendeklarasikan objek class Bank
private String nama="-----"; //mendeklarasikan dan menginisialisasikan variable nama
public nasabah (){// constructor class NAsabah
bank= new bank(); // menginisialisasikan objek class Bank
}
public void menabung (int uang){
bank.setSaldo(uang);
}
public void mengambil(int uang){
bank.setSaldo(-uang);
}
public void cekTabungan(){
System.out.println(bank.getSaldo());
}
public void setNama (String nm) {
nama =nm;
}
public String getNama(){
return nama;
}
}
3. membuat class budi sebagai turunan dari class nasabah
public class budi extends nasabah{
public static void main(String [] ar){
budi budi = new budi ();
budi.setNama("Wily Cahyadi");
System.out.println("Nama : "+budi.getNama());
System.out.println();
System.out.println("menabung : 1000000");
budi.menabung(1000000);
System.out.println("jumlah tabungan : ");
budi.cekTabungan();
System.out.println("Menabung : 500000");
budi.menabung(500000);
System.out.println("Jumlah Tabungan : ");
budi.cekTabungan();
System.out.println("Mengambil : 70000");
budi.mengambil(70000);
System.out.println("Jumlah Tabungan : ");
budi.cekTabungan();
}
}
overriding dan overloading
4. class bank mengoverloading constructor
public class bank {
private int saldo;
//overloading constructor bank
public bank(){
}
public bank(int uang){
saldo+=uang;
}
public void setSaldo (int uang) {
saldo+=uang;
}
public int getSaldo(){
return saldo;
}
}
5. class nasabah dengan method baru yang akan dioverriding di class budi
public class nasabah {
private bank bank; //mendeklarasikan objek class Bank
private String nama="-----"; //mendeklarasikan dan menginisialisasikan variable nama
public nasabah (){// constructor class NAsabah
bank= new bank(); // menginisialisasikan objek class Bank
}
public void menabung (int uang){
bank.setSaldo(uang);
}
public void mengambil(int uang){
bank.setSaldo(-uang);
}
public void cekTabungan(){
System.out.println(bank.getSaldo());
}
//override di class budi
public void punyaATM(){
System.out.println("Tidak punya kartu ATM");
}
public void setNama (String nm) {
nama =nm;
}
public String getNama(){
return nama;
}
}
6. class budi dengan overriding method dari class nasabah
public class budi extends nasabah{
public static void main(String [] ar){
budi budi = new budi ();
budi.setNama("Wily Cahyadi");
System.out.println("Nama : "+budi.getNama());
System.out.println("Keterangan: ");
budi.punyaATM();
System.out.println();
System.out.println("menabung : 1000000");
budi.menabung(1000000);
System.out.println("jumlah tabungan : ");
budi.cekTabungan();
System.out.println("Menabung : 500000");
budi.menabung(500000);
System.out.println("Jumlah Tabungan : ");
budi.cekTabungan();
System.out.println("Mengambil : 70000");
budi.mengambil(70000);
System.out.println("Jumlah Tabungan : ");
budi.cekTabungan();
}
//mengoverride method di class nasabah
public void punyaATM(){
System.out.println("Punya kartu ATM");
}
}
7. menggunakan constructor lain ketika membuat objek dari class bank
public class nasabah {
private bank bank; //mendeklarasikan objek class Bank
private String nama="-----"; //mendeklarasikan dan menginisialisasikan variable nama
public nasabah (){// constructor class NAsabah
bank= new bank(1000); // memberikan nilai int pada constructor class bank
}
public void menabung (int uang){
bank.setSaldo(uang);
}
public void mengambil(int uang){
bank.setSaldo(-uang);
}
public void cekTabungan(){
System.out.println(bank.getSaldo());
}
//override di class budi
public void punyaATM(){
System.out.println("Tidak punya kartu ATM");
}
public void setNama (String nm) {
nama =nm;
}
public String getNama(){
return nama;
}
}








Leave a Reply