Encapsulation, Access Modifier, Package, Importing
Encapsulation, Access Modifier, Package, Importing
ACCESS MODIFIER,
PACKAGE, IMPORTING
DHANY INDRA GUNAWAN
ACCESS MODIFIER
• Modifier adalah suatu kata kunci yang diberikan untuk mendefinisikanmakna dari suatu
variable, method, atau class. Terdapat dua jenis modifier pada java yaitu Access Control
Modifier dan Non Access Control Modifier
• Access Control Modifier
• Access Control Modifier merupakan visibilitas yang ada dalam suatuobyek. Terdapat 4
tipe level akses, antara lain :
• Akses Default
• Akses Default adalah access control modifier yang tidak ada pendeklarasian suatu
modifier sehingga variable, method, atau class dapatlangsung diakses didalam package
yang sama
CONTOH
>>Akses : public
// Nama File : package1/Titik.java
package package1;
public class Titik {
public Titik(){
System.out.println(
"Titik di package
1");
}
}
// Nama File : package1/Tester.java package yang sama
package package1; Kedua kelas berada pada
class Tester {
public static void main(String[] args) {
Titik t1=new Titik();
}
}
PENGATURAN AKSES DI LEVEL KELAS
Access Levels
Modifier Class Package Subclass World
public Y Y Y Y
protected Y Y Y T
tanpa modifier Y Y T T
private Y T T T
Keterangan :
Y : Bisa diakses
T : Tidak bisa
diakses
PENGATURAN AKSES DI LEVEL MEMBER
• Modifier yang mengontrol level akses pada suatu method, class danvariabel. Non Access
Control Modifier memiliki 3 level akses yaitu:
• STATIC
• Salah satu jenis modifier di Java yang digunakan agar suatu atribut ataupun method dapat
diakses oleh kelas atau objek tanpa harus melakukaninstansiasi terhadap kelas tersebut.
• FINAL
• Proses finalisasi pada method, class dan variabel agar nilai didalamnyatidak dapat berubah
• ABSTRACT
• Pendeklarasian terhadap suatu class dan method yang bersifat abstract.
LANJUTAN
Alasannya adalah
Membatasi hak akses. Ini dilakukan agar sebuah member
tidak sembarangan dibaca atau diisi
Menyembunyikan informasi. Pengguna class tidak harus tahu apa
yang ada/terjadi di dalam class (Information Hiding)
PACKAGE
Jika kita ingin sebuah class berada dalam suatu package, maka didalam file classnya
tambahkan baris berikut
package <namapackage >
Penamaan package sebaiknya menggunakan huruf kecil semua.
Nama package harus disesuaikan dengan nama folder tempat menyimpan class tersebut.
package mylib ; class Titik {
double x; double y;
}
ATURAN PENAMAAN PACKAGE
Import package berarti anda ingin menggunakan member/isi dari sebuah package.
Impor t suatu package dilakukan dengan keyword impor t. import
>>Contoh :
import mylib.Titik;
Atau
import
>>Secara mylib.*
default, jika kita tidak mengimpor t satu package -pun maka sebenarnya anda
mengimport package java.lang.* yang contoh class yang ada di dalamnya adalah class String
dan Math.
Inilah yang membuat anda tidak usah import package apa pun ketika akan menggunakan
class String atau Math.
IMPORT PACKAGE
• Buatlah sebuah class bernama Nilai yang akan menampung nilai Quis, UTS, UAS.
Nilai yang dapat diterima adalah antara 0 sampai 100. Setiap nilai dapat diubah
nilainya. Class ini harus dapat diakses dari class mana pun.
public class nilai {
public double Quis;
public double UTS;
public double UAS;
public double getNA(){
return 0.20*Quis+0.30*UTS+0.5*UAS;
}
}
CONTOH PEMANGGILAN CLASS NILAI
• Method adalah implementasi operasi yang bisa dilakukan olehClass dan Objek. Dengan
kata lain method dapat dikatakan sebagai polatingkah atau prilaku yang dimiliki oleh
objek. Misalnya pada objek Manusia,Manusia memiliki prilaku diantaranya berjalan,
berbicara, dll.
• Dalam java, terdapat 2 jenis method :
• Setter
• Getter
SETTER
• Setter adalah method yang digunakan untuk memberikan public class manusia {
String nama;
nilai pada suatuattribute, object, dll. Method setter ini String umur;
tidak memiliki pengembalian nilai,cirinya method ini String Jenis_kelamin;
adalah berisi kata void pada awal penulisan String alamat;
method.Terdapat juga kata kunci this yang berfungsi public void setnama(String nama){
untuk menunjukan suatumember dalam classnya sendiri. this.nama = nama;
Contoh : }
public void setumur(String umur){
Pada contoh tersebut, variable boleh ditulis secara global (tidak this.umur = umur;
harusdidalam method). Method setter memiliki parameter dalam }
constructornya,sebagai acuan value yang boleh dimasukan. Pada }
contoh diatas ‘(Stringnama)’ dan ‘(String umur)’ menggunakan
tipe data String
public class manusia {
String nama;
GETTER String umur;
String Jenis_kelamin;
String alamat;
• Getter adalah pengembalian nilai dari suatu objek atau attribute public void setnama(String nama){
this.nama = nama;
yangsudah berisi nilai. Method getter menjadikan dirinya
}
sebagai nilai dari sebuahobjek / tipe data. Untuk public void setumur(String umur){
menjadikannya sebagai value, maka tipe method ini tidak boleh this.umur = umur;
menggunakan‘void’ melainkan harus mempunyai type data }
tertentu. Contoh
public String getnama(){
return nama;
}
• Pada contoh tersebut, method getter mempunyai type data public String getumur(){
String, dia akanmengambil nilai dari suatu attribute / return umur;
objek untuk dijadikan nilai dirinya sendiri. Pada kasus ini, }
method getnama() mengambil nilai dari attributeglobal‘nama’ }
sebagai nilai method itu sendiri
ENKAPSULASI
Manusia
+nama : String
-hobi :String
+ manusia (String nama, String hobi)
• Sesudah Encapsulation :
Manusia
+nama : String
-hobi :String
+ manusia (String nama, String hobi)
+ setnama (nama : String)
+ sethobi (hobi : String)
+ getnama () : String
+ gethobi () : String