java中父类和子类的接口实现

时间:2018-01-20 05:20:44

标签: java interface polymorphism abstract object-oriented-analysis

如果基类和子类实现了相同的接口,并且在基类中提供了抽象方法的方法实现,那么我们是否也必须在子类中提供实现呢?

4 个答案:

答案 0 :(得分:1)

是的,你可以,并且当你有初始化范例时,子类的实现会执行

BaseClass v = new SubClass();

这是非常正常的多态性/ ovveriding。

相关:Can an interface extend multiple interfaces in Java?

答案 1 :(得分:1)

  

我们是否必须在子类中提供实现

不,你没有必须这样做。如果另一个类extends,则它已经在父类中声明了所有(publicprotected)方法。

可以提供此方法的不同实现。在这种情况下,将覆盖父类的方法。

答案 2 :(得分:1)

不需要在父类和子类中实现相同的接口,因为如果您在父类中实现它,那么child也将具有相同的方法,但是如果要覆盖,则可以覆盖它。

public class Rhombus extends Parallelogram {

    public static void main(String args[0]) {

        Rhombus rhombus = new Rhombus();
        rhombus.draw();
    }
}

//输出 这个平行四边形是正方形

string input = "{  \"errors\": {    \"title\": [\"can't be blank\"]  }}";
JObject json = JObject.Parse(input);

foreach (var item in json)
{
    Console.WriteLine($"{item.Key} _ {item.Value}");
}

//输出 这是平行四边形

答案 3 :(得分:0)

它不应该是必需的,因为子类已经在基类

中具有方法实现