我有一个接口称为Worker
这是我要揭露,使最终用户可以直接电话咨询:防止从重写某些方法抽象实现
Worker w = WorkerFactory.createInstance();
w.mainBit();
如何防止从提供致以AbstractWorker
类的类自己执行mainBit
方法?
这是我迄今为止的结构:
interface Worker {
void mainBit();
}
class WorkerFactory {
public static Worker createInstance() {
return new WorkerImpl();
}
}
abstract class AbstractWorker implements Worker {
@Override
public void mainBit() {
this.doThing1();
this.doThing2();
}
public abstract void doThing1();
public abstract void doThing2();
}
class WorkerImpl extends AbstractWorker {
@Override
public void doThing1() {
}
@Override
public void doThing2() {
}
@Override
public void mainBit() {
// I don't want classes to override this functionality
}
}
不知道你也可以使方法最终。万分感谢! – CodingIntrigue