STAY WITH US

Konsep Enkapsulasi Pada JAVA


Berjumpa lagi di Apa Aja Dot Kom, kali ini admin akan memberikan informasi tentang Konsep Enkapsulasi Pada JAVAL. Oke langsung saja kita cek di bawah ini.
Enkapsulasi dapat berfungsi untuk menyembunyikan data. Enkapsulasi juga merupakan tembok penghalang yang mencegah kode atau data diakses oleh data lain di luar class. Dalam enkapsulasi ada dua hal mendasar yaitu :
  • Information hiding
Sebelumnya kita dapat mengakses anggota class baik berupa atribut maupun method secara langsung dengan menggunakan objek yang telah kita buat. Hal ini dikarenakan akses kontrol yang diberikan kepada atribut maupun method yang ada di dalam class tersebut adalah ‘public’. Kita dapat menyembunyikan informasi dari suatu class sehingga anggota class tersebut tidak dapat diakses dari luar, caranya adalah hanya dengan memberikan akses kontrol ‘private’ ketika mendeklarasikan atribut atau method. Proses ini disebut dengan information hiding.
  • Interface to access data
Jika kita telah melakukan information hiding terhadap suatu atribut pada suatu class, lalu bagaimana cara melakukan perubahan terhadap atribut yang kita sembunyikan tersebut, caranya adalah dengan membuat suatu interface berupa method untuk menginisialisasi atau merubah nilai dari suatu atribut tersebut.
Dalam Enkapsulasi ada tiga keyword  yaitu :
NoKeywordPada Class dan InterfacePada Method dan Variabel
1PublicDapat diakses dimanapunDiwarisi oleh subkelasnya, dapat diakses dimanapun
2ProtectedTidak bisa diterapkanDiwarisi oleh subkelasnya, dapat diakses oleh method yang sepaket
3PrivateTidak bisa diterapkanTidak dapatdiakses dimanapun kecuali oleh method-method yang ada dalam kelas itu sendiri
Berikut ini adalah aksebilitas keyword enkapsulasi
AksebilitasPublicPrivateProtected
Kelas yang samaYaYaYa
Sembarang kelas dalam package yang samaYaTidakYa
Sembarang kelas diluar packageYaTidakTidak
Subkelas dalam package samaYaTidakYa
Subkelas diluar packageYaTidakYa
Berikut contoh program java yang menggunakan konsep enkapsulasi :
Program ini berisi tentang harga sebuah laptop impor, dari mulai harga pabrik hingga harga jual di pasaran yang telah ditambah pajak, bea cukai, dan keuntungan. Pajak diambil dari 12 % dari harga pokok, Bea Cukai sebesar 250000, keuntungan diambil dari 20% dari harga pokok. Harga jual dimabil dari Harga total + keuntungan.
Pertama buat dulu file LAPTOP.java
Untitled3
Kemudian membuat kelas Harga.java
Untitled2
Jika program dijalankan maka akan muncul
input
Maka hasilnya
Untitled
Penjelasan
public class LAPTOP
berarti kita membuat sebuah kelas (class) yang bernama laptop, dimana kelas laptop ini nantinya akan memiliki sebuah atribut dan method method tertentu.
Harga laptop = new Harga();
merupakan method yang dibuat untuk menampung nilai harga dari sebuah laptop yang akan diisikan yaitu dengan membuatkan parameter inew Harga pada method ini.
import javax.swing.JOptionPane;
untuk menampilkan pilihan input ketika program di jalankan.
System.out.println(“\nBesar HargaJual : “+ laptop.getHargaJual());
Method yang digunakan untuk menampilkan harga jual laptop setelah di hitung pada kelas harga.
class Harga
merupakan kelas harga dalam package laptop
private double hargaPokok, hargasplusPajak, Pajak, keuntungan;
merupakan sebuah atribut dari kelas (class) Harga, dimana bertipe double karena berisi lebih dari satu data. Atribut ini bertipe private yang artinya bahwa atribut ini tidak dapat diakses oleh kelas (class) lain. Dan untuk mengaksesnya, read atau write maka dibutuhkan sebuah method yang khusus untuk mengaksesnya.
public double hargaJual, hargaTotal;
merupakan sebuah atribut dari kelas (class) Harga, dimana bertipe double karena berisi lebih dari satu data. Atribut ini bertipe public yang artinya bahwa atribut ini dapat diakses dimanapun termasuk oleh kelas lain.
void hitungHarga
method ini tidak mengembalikan nilai apaun dan nilai akan ditampilkan dengan memasukan syntax untuk menampilkan nilai

Itulah Konsep Enkapsulasi Pada JAVA. Semoga informasi tersebut dapat bermanfaat untuk kita semua. Sekian dan terima kasih,

Post a Comment

0 Comments