我一直在尝试通过创建练习 Android 应用程序来提高我的 (目前较差的) Java 技能。在我的应用程序中,每个屏幕都由一个单独的类来管理输入、逻辑和渲染处理。
对于一些类而言,它们变得过于庞大,难以轻松理解,因此我决定将代码移动到几个分类的类中,并在主屏幕类中以对象的形式调用它们。例如:
我想了解的是这种方式是否是提高代码可读性的正确方法,以及它是否对内存使用/处理速度产生任何影响。例如,调用静态方法是否是更好的选择?
此外,当类彼此依赖时,答案是否会改变?例如,如果ScreenB中的方法需要调用ScreenA中的变量或方法?我认为以下两个示例都可以,但我不知道最佳实践是什么:
对于一些类而言,它们变得过于庞大,难以轻松理解,因此我决定将代码移动到几个分类的类中,并在主屏幕类中以对象的形式调用它们。例如:
public class Screen {
ScreenA a;
ScreenB b;
ScreenC c;
public Screen() {
a = new ScreenA();
b = new ScreenB();
c = new ScreenC();
}
public void doStuff() {
a.method();
b.method();
c.method();
}
}
我想了解的是这种方式是否是提高代码可读性的正确方法,以及它是否对内存使用/处理速度产生任何影响。例如,调用静态方法是否是更好的选择?
此外,当类彼此依赖时,答案是否会改变?例如,如果ScreenB中的方法需要调用ScreenA中的变量或方法?我认为以下两个示例都可以,但我不知道最佳实践是什么:
public class Screen {
ScreenA a;
ScreenB b;
ScreenC c;
public Screen(){
a = new ScreenA();
b = new ScreenB(a);
c = new ScreenC(a,b);
}
public void doStuff(){
a.method();
b.method();
c.method();
}
}
public class ScreenB {
ScreenA a;
public ScreenB(ScreenA a) {
this.a = a;
}
}
或者:
public class Screen {
ScreenA a;
ScreenB b;
ScreenC c;
public Screen(){
a = new ScreenA();
b = new ScreenB();
c = new ScreenC();
}
public void doStuff(){
a.method();
b.method(a);
c.method(a,b);
}
}