如何强制一个方法在java中重写?

我必须创build很多非常类似的类,它们之间只有一个方法不同。 所以我认为创build抽象类将是实现这一目标的好方法。 但是我想重写的方法(比如foo()方法)没有默认行为。 我不想保留任何默认实现,强制所有扩展类来实现这个方法。 我该怎么做呢?

你需要一个基类的抽象方法:

 public abstract class BaseClass { public abstract void foo(); } 

这样,您不指定默认行为, 强制从BaseClassinheritance的非抽象类指定foo的实现。

只要将foo()定义为基类中的抽象方法:

 public abstract class Bar { abstract void foo(); } 

有关更多信息,请参阅Java™教程(接口和inheritance) 。

只是使方法抽象。

这将强制所有的子类实现它,即使它是在抽象类的超类中实现的。

 public abstract void foo(); 

如果你有一个抽象类,那么就使你的方法(比如foo抽象)

 public abstract void foo(); 

那么所有的子类将不得不重写foo

使这个方法abstract