Acces Modifier Java dan Fungsinya
- Default - Tidak ada persyaratan keyword
- Private
- Protected
- Public
- Public:
- Memberikan akses ke entitas tersebut dari mana saja, baik dari kelas yang sama, paket yang sama, atau paket yang berbeda.
- Variabel, metode, atau kelas yang dideklarasikan sebagai public dapat diakses oleh semua kelas di dalam aplikasi.
- Private:
- Mengakses entitas tersebut hanya di dalam kelas tempat entitas tersebut dideklarasikan.
- Variabel atau metode yang dideklarasikan sebagai private hanya dapat diakses di dalam kelas yang sama dan tidak dapat diakses oleh kelas lain, termasuk kelas turunannya.
- Protected:
- Memungkinkan akses ke entitas tersebut di dalam kelas yang sama, paket yang sama, dan kelas turunannya di paket yang berbeda.
- Variabel atau metode yang dideklarasikan sebagai protected dapat diakses oleh kelas dalam paket yang sama, serta kelas turunannya di luar paket.
- Default (Tidak ada modifier):
- Juga dikenal sebagai package-private.
- Entitas yang tidak memiliki access modifier akan memiliki tingkat akses default, yang berarti hanya dapat diakses di dalam paket yang sama.
Anggota data, class, atau method yang tidak dideklarasikan menggunakan access modifier apapun maka secara otomatis akan menjadi tipe default access yang diakses hanya dengan menggunakan package yang sama.
// Program Java
// mengilustrasikan default
// modifier.
package p1;
// Class Peek memiliki default
// access modifier.
class Peek
{
void display()
{System.out.println("Hello"
+" World!");}
}
// Program Java
// mengilustrasikan error
// ketika menggunakan class
// dari package yang berbeda
// dengan default modifier.
package p2;
import p1.*;
// Class ini memiliki default
// access modifier.
class PeekNew
{
public static void main(String args[])
{
// Mengakses class Peek dari
// package p1.
Peeks obj = new Peek();
obj.display();
}
}
Karenanya modifier dengan istilah dari "aplikasi ke class" hanya diterapkan untuk nested class dan tidak untuk top level class.
// Program Java
// mengilustrasikan error
// ketika menggunakan class
// dari package yang berbeda
// dengan private modifier.
package p1;
class A
{
private void display()
{System.out.println("Makan"
+"TidurMakan");}
}
class B
{
public static void main(String args[])
{A obj = new A();
// Mencoba untuk mengakses
// method private dari class
// lainnya.
obj.display();}
}
obj.display();
Protected: Protected access modifier adalah penggunaan spesifik dari keyword protected. Method atau anggota data dideklarasikan sebagai protected yang kemudian diakses menggunakan nama package yang sama atau sub class dalam package yang berbeda.
Pada contoh berikut akan diciptakan dua package p1 dan p2. Class A dalam p1 akan bertipe public, yang akan diakses melalui p2. Method berikut memperlihatkan class A adalah protected dan class B adalah turunan (inheritance) dari class A, dan method protected akan diakses dari penciptaan sebuah object dari class B.
// Program Java
// mengilustrasikan protected
// modifier.
package p1;
/* Class A */
public class A
{
protected void display()
{System.out.println("Makan"
+"TidurMakan");}
}
// Program Java
// mengilustrasikan protected
// modifier.
package p2;
// mengimpor semua class pada
// package p1.
import p1.*;
// Class B adalah subclass
// dari Class A.
class B extends A
{
public static void main(String args[])
{B obj = new B();
obj.display();}
}
Public: Public access modifier adalah penggunaan spesifik dari keyword public. Public access modifier memiliki scope luas diantara semua access modifier lainnya. Class, method, atau anggota data yang dideklarasikan sebagai tipe public dapat diakses dari manapun pada program. Tidak ada batasan dalam scope dari anggota data public.
// Program Java
// mengilustrasikan public
// modifier.
package p1;
public class A
{
public void display()
{System.out.println("Makan"
+"TidurMakan");}
}
package p2;
import p1.*;
class B
{
public static void main(String args[])
{A obj = new A;
obj.display();}
}
- Kontrol Akses: Access modifier mengontrol tingkat akses ke variabel, metode, atau kelas dalam aplikasi Java. Dengan membatasi akses, pengembang dapat menerapkan prinsip keamanan dan mencegah akses yang tidak sah atau tidak diinginkan.
- Enkapsulasi: Access modifier membantu dalam penerapan prinsip enkapsulasi, di mana detail implementasi internal suatu kelas disembunyikan dan hanya interaksi yang diizinkan melalui antarmuka yang didefinisikan. Hal ini memungkinkan pengembang untuk membuat kode yang lebih modular, terpisah, dan dapat dimodifikasi tanpa mempengaruhi bagian-bagian lain dari sistem.
- Pembagian Modular: Dengan menggunakan access modifier dengan bijak, pengembang dapat membagi kode program ke dalam unit-unit yang terpisah dan mandiri. Ini memfasilitasi pemeliharaan kode, penyelesaian masalah, dan pengembangan lebih lanjut dengan cara yang terstruktur dan terorganisir.
- Keselamatan Data: Dengan membatasi akses ke variabel menggunakan access modifier seperti private, pengembang dapat memastikan bahwa data sensitif atau penting tidak dapat diubah secara langsung oleh kelas lain, sehingga meningkatkan keamanan data dalam aplikasi.
public class Mobil
{
public String merek;
private int tahunProduksi;
protected double harga;
String warna;
// Default access modifier
public Mobil(
String merek,
int tahunProduksi,
double harga,
String warna)
{
this.merek = merek;
this.tahunProduksi = tahunProduksi;
this.harga = harga;
this.warna = warna;
}
public void display() {
System.out.println("Mobil "
+ merek
+ " tahun "
+ tahunProduksi
+ ", warna "
+ warna
+ ", harga: "
+ harga);
}
}
- Jika programmer menggunakan class yang telah diciptakan sebelumnya, cobalah untuk menggunakan level access terbatas yang akan masuk untuk anggota tertentu. Gunakankah tipe private pada program kecuali memiliki alasan lain untuk tidak menggunakan tipe private tersebut.
- Hindari penggunaan tipe public kecuali untuk konstanta (constants).
- Cara Menggunakan Overloading Java dan Fungsinya
- PUBLIC STATIC VOID MAIN Java dan Fungsinya
- Overloading dan Overriding Static Java dan Fungsinya
- Shadowing Fungsi Static Java dan Fungsinya
- Static Method dan Instance Method Java dan Fungsinya
- Cara Menentukan Nilai Variabel Static Final Java dan Fungsinya
- Return Covariant Java dan Fungsinya
9 komentar untuk "Acces Modifier Java dan Fungsinya"
Hubungi admin melalui Wa : +62-896-2414-6106
Respon komentar 7 x 24 jam, mohon bersabar jika komentar tidak langsung dipublikasi atau mendapatkan balasan secara langsung.
Bantu admin meningkatkan kualitas blog dengan melaporkan berbagai permasalahan seperti typo, link bermasalah, dan lain sebagainya melalui kolom komentar.
- Ikatlah Ilmu dengan Memostingkannya -
- Big things start from small things -
Apa yang dimaksud dengan access modifier pada Java?
BalasHapusKeyword publik merupakan bentuk access modifier pada Java, dimana keyword tersebut digunakan untuk melakukan pengaturan pada tingkat akses dalam sebuah class, atribut, method, dan constructor. Access modifier pada bahasa pemrograman Java dibagi menjadi dua kategori yaitu acces modifier dan non access modifier.
HapusApa contoh code bentuk acces modifilers
HapusContohnya, sudah disediakan pada artikel yang telah dijelaskan sebelumnya,,
HapusPada Java, access modifier digunakan untuk mengatur aksesibilitas atau visibal class, interface, variabel, method, konstruktor, anggota data, dan method setter.
BalasHapusApa yang dimaksud dengan access specifier dan modifier pada bahasa pemrograman Java?
BalasHapusAccess specifier digunakan untuk memberikan kode user pada Java, yang digunakan untuk mengetahui apakah class lain dapat mengakses kode (program) tersebut atau tidak. Access modifier menyediakan access specifier dan access modifier untuk membuat akses ke dalam kode program java pada class lainnya. Disini modifier juga digunakan untuk melakukan tugas yang sama tetapi dengan beberapa batasan tertentu.
HapusSebutkan dan Jelaskan empat jenis access modifier yang disediakan oleh Java!
BalasHapusTolong bantu jawab kak ini mau dikumpulin hari ini nanti jam 11:(
empat jenis acces modifer pada java adalah:
Hapus1. default
2. private
3. protected
4. public