如何强制一个方法在java中重写?
我必须创build很多非常类似的类,它们之间只有一个方法不同。 所以我认为创build抽象类将是实现这一目标的好方法。 但是我想重写的方法(比如foo()方法)没有默认行为。 我不想保留任何默认实现,强制所有扩展类来实现这个方法。 我该怎么做呢?
你需要一个基类的抽象方法:
public abstract class BaseClass { public abstract void foo(); }
这样,您不指定默认行为, 并强制从BaseClass
inheritance的非抽象类指定foo
的实现。
只要将foo()定义为基类中的抽象方法:
public abstract class Bar { abstract void foo(); }
有关更多信息,请参阅Java™教程(接口和inheritance) 。
只是使方法抽象。
这将强制所有的子类实现它,即使它是在抽象类的超类中实现的。
public abstract void foo();
如果你有一个抽象类,那么就使你的方法(比如foo
抽象)
public abstract void foo();
那么所有的子类将不得不重写foo
。
使这个方法abstract
。