Biasanya ketika membuat variabel global baru saya tidak mendefinisikan pengubah aksesnya. Jadi sesuai java akan mengadopsi pengubah akses default properti. Ketika saya perlu mengakses variabel itu di luar ruang lingkup standar saya mengubah pengubah aksesnya yang lain biarkan apa adanya. Jadi pertanyaan saya adalah " Apakah saya melakukannya dengan cara yang benar? Apakah normal memiliki variabel akses default? Atau haruskah saya menggunakan pribadi / publik untuk mereka? Apakah praktik pengkodean yang baik untuk tidak menggunakan pengubah akses? "
java
coding-style
access-modifiers
Harry Joy
sumber
sumber
static
di .NET, mereka juga merusak unit testability; karena unit yang menggunakannya akan SELALU bergantung pada mereka dan tidak ada cara untuk memalsukan mereka untuk mengisolasi unit yang sedang diuji.Beberapa prinsip pemrograman umum di sini:
...tetapi juga:
Saya bukan ahli Java, tetapi aturan umum harus: Jika apa yang terjadi jelas bagi seseorang yang akrab dengan bahasa tanpa eksplisit, gunakan perilaku implisit. Namun jika ini mungkin menempatkan seseorang di jalur yang salah, maka jelaslah hal itu secara eksplisit.
sumber
Java tidak memiliki properti otomatis, jadi semua anggota kelas secara umum harus pribadi dengan metode get / set untuk penggunaan publik, jika diperlukan.
Menurut sumbernya (Oracle java Docs) ini adalah pendekatan yang direkomendasikan.
"Gunakan tingkat akses paling ketat yang masuk akal untuk anggota tertentu. Gunakan pribadi kecuali jika Anda punya alasan kuat untuk tidak. Hindari bidang publik kecuali untuk konstanta. Bidang publik cenderung menghubungkan Anda dengan implementasi tertentu dan membatasi fleksibilitas Anda dalam mengubah kode. "
http://download.oracle.com/javase/tutorial/java/javaOO/accesscontrol.html
sumber
public
halnya)?