我已經讀了很多Android的代碼看起來像這樣,這麼多次:爲什麼Activity類中的字段和視圖使用默認的Java訪問修飾符而不是私有的?
public class MainActivity extends AppCompatActivity {
EditText editText;
TextView textView;
int someInt;
String someString;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
//init views
}
}
我還是有點在Android的編程菜鳥,但作爲一個經典的Java程序員,我不明白你爲什麼會不要將你的領域封閉爲私人領域,並在必要時通過獲得者來使他們可以接受。這有什麼理由嗎?像同一包中的其他類或活動需要直接訪問這些字段?這可能是一個愚蠢的問題,但我找不到解釋。
我個人更喜歡默認訪問,主要是爲了懶惰。但這是合理的。它減少了混亂IMO。這並不是那麼危險 - 同一套教材中的班級不太可能發生虐待。從測試代碼訪問可能是有益的。 – ZhongYu