我应该声明Android类成员protected
吗?有什么好处?我看到的所有示例都只声明字段类型及其名称("包受保护")。
protected TextView mName;
vs
TextView mName;
我不需要延长这样的课程。
答案 0 :(得分:0)
受保护:变量可供该类和其他扩展该类的类
私有:变量仅适用于该类
公共:变量可供该类和其他类访问,即使它们不扩展此类也是如此。您需要创建类的实例才能访问其公共变量。
公共static:变量可供该类和其他类访问,即使它们不扩展此类也是如此。您不需要创建类的实例以访问其公共静态变量。
公共静态final:变量可供该类和其他类访问,即使它们不扩展此类也是如此。您不需要创建类的实例以访问其公共静态变量。此外,您不能更改变量的值,因为它是最终的。
答案 1 :(得分:0)
我只会根据http://jakewharton.github.io/butterknife/使用ButterKnife
库,无论如何都要求这些字段变量为public
。
//Activity
@InjectView(R.id.your_textview_name)
public TextView mText;
@Override
public void onCreate(Bundle saveinstanceState) {
super.onCreate(saveinstanceState);
setContentView(R.layout.your_layout);
ButterKnife.inject(this);
}
//Fragment
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle saveinstanceState) {
View view = inflater.inflate(R.layout.your_fragment_layout, container, false);
ButterKnife.inject(this, view);
return view;
}