Enkapsulasi Data Dengan Aksesor Dan Mutator Di Java
Enkapsulasi (encapsulation) adalah konsep menyembunyikan implementasi detail sebuah kelas dan memperbolehkan pengaksesan ke kelas tersebut melalui data field dan metoda yang mempunyai modifier public. Namun demikian, data field sebuah kelas yang dideklarasikan dengan modifier public bisa menimbulkan masalah karena dapat dimodifikasi dengan cara diakses langsung melalui variabel yang mengacu ke obyek kelas (variabel acuan).Apa itu Constructor?
Constructor adalah method khusus yang akan dieksekusi pada saat pembuatan objek (instance).Biasanya method ini digunakan untuk inisialisasi atau mempersiapkan data untuk objek.
FILE :
Class DIPISAHKAN dari file utama,Jadi ada 2 file : (1)FILE UTAMA (2)FILE CLASS
MODEL BENTUK CLASS :
A.MODEL: kirim SEMUA data atribut kedalam class + di proses2 + di print (methode print ada didalam file class)B. MODEL: kirim SEMUA data atribut kedalam class + di proses2 + di print (methode print ada di file utama, data dikeluarkan dari class SATU PER SATU)
C.MODEL: kirim SATU PER SATU data atribut kedalam class + di proses2 + di print (methode print ada di file utama, data dikeluarkan dari class SATU PER SATU)
1. Aksesor dan mutator.
Metode get disebut juga dengan getter atau accessor dan metoda set disebut dengan setter atau mutator. Di bawah ini adalah sintak untuk mendeklarasikan metode yang digunakan untuk mengembalikan nilai data field sebuah kelas.public tipe-nilai-dikembalikan getDataField();
contoh,
public double getPanjang();
public double getLebar();
apabila tipe-nilai-dikembalikan metoda get adalah tipe boolean, sintaksis penulisannya adalah:
public boolean isDataField();
Untuk mendeklarasikan metoda set yang digunakan untuk memodifikasi nilai data field kelas, Anda dapat menggunakan sintak sebagai berikut:
public void setDataField(tipe-data nilai-DataField);
contoh,
public void setPanjang(double nilaiPanjang);
public void setLebar(double nilaiLebar);
Karena data field dideklarasikan dengan modifier private, maka metode get merupakan satu-satunya cara untuk mengakses nilai data field dan metode set merupakan satu-satunya cara untuk memodifikasi nilai data field.
2. Penerapan metoda get dan set.
Data field sebuah kelas yang dideklarasikan dengan modifier private tidak dapat diakses lagi menggunakan variabel acuan ke obyek. Data field hanya dapat diakses dan dimodifikasi melalui metoda get dan set yang dedeklarasikan dengan modifier public.contoh 1 : Melon
Buatlah program class mencetak CIRI2 manggah dengan menggunakanENKAPSULASI dan CONSTRUKTOR,
Data tidak di input
CLASS dipisahkan dari file utama, nama file class = melon
Langkah – Langkahnya pembuatannya sebagai berikut :
1. Buat new project klik Java
dan pilih java application, kemudian
next.
2. Buat Project Name bebas
misalnya dengan nama “Inheritance_class_melon”
dan browse ke folder yang sudah
dibuat, setelah itu klik finish dan
file utama/main akan terbuat.
3. Buat
new file dengan cara klik kanan pada source package -> new -> pilih java class, kemudian masukkan nama untuk classnya misalnya "classmelon" kemudian finish
4. Masukkan coding berikut ini pada file class melon :
package inheritance_class_melon;
public class classmelon {
private String rasa="";
private String bentuk="";
private int harga=0;
//--constructor semua atribut
public classmelon(String rasa,String bentuk,int harga){
this.rasa=rasa;
this.bentuk=bentuk;
this.harga=harga;
}
//--methodnya
void cetak(){
System.out.println("--------------");
System.out.println("MELON");
System.out.println("--------------");
System.out.println("RASA ="+this.rasa);
System.out.println("RASA ="+this.bentuk);
System.out.println("HARGA ="+this.harga);
System.out.println("--------------");
}
void dipotong(){
System.out.println("Melon di potong..");
}
void dimakan(){
System.out.println("Melon di makan...");
}
}
5. Masukkan coding berikut pada file utama atau main class
package inheritance_class_melon;
public class Inheritance_class_melon {
public static void main(String[] args) {
classmelon ml=new classmelon("Manis","Bulat",15000);
ml.cetak();
ml.dimakan();
ml.dipotong();
}
}
6. kemudian jalankan / run -> f6 maka akan menampilkan output seperti berikut :
Materi java lainnya :
- Materi #1 : Pengenalan dan Teori Singkat Java
- Materi #2 : Input Data, IF, Switch
- Materi #3 : Looping dengan FOR & WHILE
- Materi #4 : Array 1 Dimensi
- Materi #5 : Procedure
- Materi #6 : Procedure Tanpa Array
- Materi #7 : Procedure dengan Array
- Materi #8 : OOP Class Object
- Materi #9 : Enkapsulasi dan Construktor
- Materi #10 : Constructor OverlordMateri 10
- Materi #11 : Inheritance - SUPER SUB CLASS
- Materi #12 : Polimorfisme
Tidak ada komentar:
Posting Komentar