我真的在努力学习课程,扩展和实施。
在android上我想创建一个首选项屏幕并检查用户输入。
因此我可以使用名为preferences.class的文件,并使用以下类执行我需要的所有内容:
public class Preferences extends PreferenceActivity implements OnSharedPreferenceChangeListener {
@Override
protected void onCreate(Bundle savedInstanceState) {
}
@Override
public void onSharedPreferenceChanged(SharedPreferences sp, String key) {
}
}
但是,将它分成不同的课程是不是更好?如果是的话怎么样?
答案 0 :(得分:2)
您可以拥有PreferenceChangeListener
来实施OnSharedPreferenceChangeListener
,而您的偏好课程将有PrefernceChangeListener
public class Preference extends PreferenceActivity {
private PrefernceChangeListener prefernceChangeListener;
public void addPreferenceChangeListener(PrefernceChangeListener prefernceChangeListener){
this.prefernceChangeListener = prefernceChangeListener;
}
public PrefernceChangeListener getPrefernceChangeListener(){
return this.prefernceChangeListener;
}
}
一般情况下,如果您的班级有可以外部化的属性,您应该尝试使用 HAS A 关系,当您的班级提供时,您将使用 IS A 关系继承值之上的功能。
大多数情况 IS A 可以避免,除非您的类没有继承优惠的含义 HAS A 而不是 IS A 关系