声明抽象方法时指定默认返回

时间:2012-01-26 10:30:41

标签: java abstract-class return-value abstract-methods

我有以下课程

界面:

public abstract class MyAbstractClass
{
  public abstract boolean checkSomething();
}

继承抽象类的类:

public class MyClass extends MyAbstractClass
{
  public boolean checkSomething()
  {
    return true;
  }
}

当我在eclipse中创建MyClass时,会自动创建checkSomething()方法,但将false作为默认返回值。有没有办法在抽象方法定义中指定默认的返回类型是什么?

3 个答案:

答案 0 :(得分:3)

不,Java中没有“默认返回值”。每个实现都应该自己决定 - 它只是Eclipse使用的方法,它恰好选择了false。鉴于你无论如何都要替换方法体,我认为这不是问题所在。

如果“just return true”的默认实现是合理的,那么听起来checkSomething首先不应该是抽象的 - 这是默认实现所在的位置,并且被想要提供的类覆盖更具体的行为。

答案 1 :(得分:3)

查看eclipse code templates

除此之外,您还可以创建自定义注释来实现相同目标。

答案 2 :(得分:0)

您不能在抽象方法声明中拥有方法主体。因此无法在抽象方法中指定默认返回值。这与IDE模板无关。