我有 2 个不同的类,其中包含大量相同的公共(public)方法。
public class HorizontalPackageSelector extends HorizontalScrollView {
// skipped
public void method1() {
doSomething1();
doSomething2();
}
}
和
public class VerticalPackageSelector extends ScrollView {
// skipped
public void method1() {
doSomething1();
doSomething2();
}
}
以及其他几个方法(两个类中大约 200 行)。
我只看到一种避免重复的方法:
public class PackageSelectorHelper {
// skipped
public void method1() {
doSomething1();
doSomething2();
}
}
public class HorizontalPackageSelector extends HorizontalScrollView {
private final PackageSelectorHelper helper = new PackageSelectorHelper(this);
// skipped
public void method1() {
helper.method1();
}
}
public class VerticalPackageSelector extends ScrollView {
private final PackageSelectorHelper helper = new PackageSelectorHelper(this);
// skipped
public void method1() {
helper.method1();
}
}
但是如果相同方法的数量太多,这并不容易做到。
最佳答案
您可以创建一个单独的类并使您的类从该类扩展 或者您可以使方法静态 - 不完全了解方法中的实现
关于java - 删除两个不相关类的相同公共(public)方法中的重复代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25720548/