我有接口 A,它定义了 3 个应该实现的方法,而 B 类必须实现所有三个方法。没问题。但在 C 类中,我也在实现接口 A,所以我必须为所有三种方法编写实现。但是我的 C 班不想要doSomthing3()
.
我只是在这里举一个例子,但我真正的应用程序是一个有很多方法的大型应用程序。
假设我有 100 个实现接口 A 的子类,现在我希望 50 个类有另一个可以放入接口 A 的新方法。但是我必须在所有 100 个子类中实现它吗?我怎么避免继承不需要的方法。
public interface A {
public void doSomething1();
public void doSomething2();
public void doSomething3();
}
public class B implements A{
public void doSomething1(){
System.out.println("doSomething 1");
}
public void doSomething2(){
System.out.println("doSomething 2");
}
public void doSomething3(){
System.out.println("doSomething 3");
}
}
public class C implements A{
public void doSomething1(){
System.out.println("doSomething 1");
}
public void doSomething2(){
System.out.println("doSomething 2");
}
public void doSomething3(){ /*Do nothing in this class */ }
}