父方的Java方法占位符用于子级

时间:2016-09-12 03:44:28

标签: java methods placeholder

我需要帮助来创建一个java方法,我需要在父方法中创建一个没有任何返回的方法,并在具有不同条件的子代中使用相同的方法。我知道有办法做到但我无法记住它,任何帮助都将受到高度赞赏。

public abstract class Property // this is the class name, which is parent 

这是我的假设吗

public abstract double calculateTax()
{
    return ;
}

我在儿童中使用相同的方法,但这是我要改变的标准

计算CommercialProperty(第一个孩子)的税额

如果平方英尺大于1500,那么如果州代码是TX,则税收是市场价值* .25其他税收是市场价值* .20否则,如果平方英尺小于或等于1500,税收是市场价值* .10

计算ResidentialProperty的税额

是.5 *如果洪水区是真税,市场价值是额外的10%。

我知道我错过了数据,但我只是想知道如何

的概念

1 个答案:

答案 0 :(得分:1)

使用抽象类的一个简单示例,同时请记住 Open/Closed principle 是这样的:

abstract class A {
  protected abstract String getFoo();
  public final bar() {
    System.out.println("The foo: " + getFoo());
  }
}

class B extends A {
  @Override
  protected String getFoo() { return "whatever"; }
}

这里的想法:

  1. 您使用抽象方法声明来表明扩展类必须"添加"这种方法的行为。
  2. 准确地说:声明抽象的方法有一个正文。没有陈述,没有回报,什么都没有!
  3. 还是你"固定"您希望在基类中拥有的行为......就在那里。并且您可以阻止子类更改该行为。
  4. 在我的例子中,抽象方法返回一个String;只是为了让这个例子更有意义。当然,抽象方法可以包含您希望它们拥有的任何签名。并且为了记录:当子类中的覆盖方法时,不要忘记放置@Override注释!