gpt4 book ai didi

java - 像这样使用继承是个坏主意吗

转载 作者:行者123 更新时间:2023-11-29 05:33:04 26 4
gpt4 key购买 nike

你好,我编程经验不足,通过做一个android项目慢慢学习。

问题是我在我的 Activity 中使用了很多相同的代码。使用继承来共享代码是个坏主意吗?

例子:

Class Main extends Activity
//shared code

_
Class a |
Class b | - extends Main
Class c _|

我的用法示例:

public class Global extends Activity {

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
setVolumeControlStream(AudioManager.STREAM_MUSIC);
}

public void toastMessage(String tMsg, int tLength) {
Toast.makeText(getApplicationContext(), tMsg, tLength).show();
}

public void nextActivity(Class<?> classId, ImageButton btnId) {
AlphaAnimation alpha;
Vibrator shake = (Vibrator) getSystemService(Context.VIBRATOR_SERVICE);
if (btnId!= null) {
alpha = new AlphaAnimation(0.5F, 1.0F);
alpha.setDuration(50);
alpha.setFillAfter(false);
btnId.startAnimation(alpha);
}
shake.vibrate(50);
Intent goToNextActivity = new Intent(getApplicationContext(), classId);
startActivity(goToNextActivity);
}

a、b、c 类可以扩展 Global 并使用:

  nextActivity(a.class, btnA);
toastMessage("example", Toast.LENGTH_SHORT);

最佳答案

一般而言,仅将继承用于代码重用并不是一个好主意。继承使用“is a”范式。看看是否更适合您使用 Composition。遵循 Matthijs 的建议,始终发布您的代码。

关于java - 像这样使用继承是个坏主意吗,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20453029/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com