我有一个带有两个构造函数的 Java 类。这个类中有很多方法。无论使用哪个构造函数,这些方法中的大多数都会正确运行,但有些方法需要不同的行为。假设 methodA() 是后者,我可以重新创建它并使用两个具有不同名称的方法,但这意味着在应用程序的其余部分重构大量代码,并且通常看起来是一个糟糕的解决方案。下面是一些代码来演示:
public class Example {
public Example(int x, int y) {}
public Example(int x){}
public methodA(){
//If the first constructor is called, this method needs to behave
//differently than if the second were called.
}
public methodB(){
//But I still want access to this method, which behaves the same regardless
}
我的想法是使用嵌套类,创建两个嵌套类,它们具有不同的methodA()但在父类中具有相同的methodB()。有没有更好的方法来实现我的愿望,或者我是否走在正确的轨道上?
非常感谢。