返回一个实现Object的Object,该Object应该在函数中返回

时间:2013-07-16 00:49:37

标签: java

这是一个Java问题,我能够使用这个概念,但不知道它为什么会起作用。我写了一个类似

的方法
private typeA someMethod()
{
    //do some stuff
    typeB someOtherObject; //here, typeB implements typeA
    //do some more stuff
    return someOtherObject;
}

它有效!我不太清楚为什么会这样。是接口是C ++的多重继承的Java等价物吗? (我在JFreeChart演示中执行了一些代码,然后用它来编写我的一个应用程序。)

1 个答案:

答案 0 :(得分:3)

它有效,因为TypeB TypeA。在需要TypeA的任何地方,都可以替换TypeB

要进一步阅读(不是特定于Java),请参阅Liskov substitution principle