在Java中,是否可以定义一个必须被覆盖才能有效的函数/方法?
例如,假设我有一个具有draw
和update
功能的可绘制对象。我想要一种方法来自动让类的用户确认这些函数需要定义,否则他们什么都不做。
另外,我想知道Eclipse(或者我的案例中的Eclipse ADT)是否可以在扩展时自动填充这些必需的函数。
这似乎是一个非常简单的问题,但谷歌搜索和堆栈搜索证明是无用的。感谢您的帮助
答案 0 :(得分:4)
听起来你在谈论一个抽象方法:
public abstract returnType methodName(/*...args...*/);
为此,您还必须标记班级abstract
:
public abstract YourClass {
// ...
}
或者,您可以在接口中定义方法,让您的类implement
接口而不实际定义它包含的方法,并声明类abstract
:
public abstract class YourClass implements TheInterface {
// ...
}
另外,我想知道Eclipse(或者我的案例中的Eclipse ADT)是否可以在扩展时自动填充这些必需的函数。
是的,Eclipse有一个功能可以做到这一点。我不再使用Eclipse,所以我不记得具体细节,但肯定存在。
答案 1 :(得分:1)