可以在扩展类中强制使用函数吗?

时间:2015-03-09 09:58:32

标签: java android eclipse syntax

在Java中,是否可以定义一个必须被覆盖才能有效的函数/方法?

例如,假设我有一个具有drawupdate功能的可绘制对象。我想要一种方法来自动让类的用户确认这些函数需要定义,否则他们什么都不做。

另外,我想知道Eclipse(或者我的案例中的Eclipse ADT)是否可以在扩展时自动填充这些必需的函数。

这似乎是一个非常简单的问题,但谷歌搜索和堆栈搜索证明是无用的。感谢您的帮助

2 个答案:

答案 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)

你可以

  • 使用界面

和/或

  • 声明您的班级abstract并创建抽象方法

另外,请查看Template method pattern