2 ifanyic ifanyic 于 2014.05.25 20:29 提问

JAVA困惑很久的问题——属于上转型还是接口回调,还是两者皆有?

在JAVA中若有一个接口:
interface Father
{
public void fatherFunc();
}

先继承该接口:
interface MyFather extends Father
{
public void setName();
}

再实现继承的MyFather接口:
public class Son implements MyFather{
public void fatherFunc(){
//对fatherFunc的实现方法
}
public void setName(){
//对setName的实现方法
}
}

最后调用接口:
MyFather myFather = new Son();//第一行
Father father = myFather;//第二行

则对第一行而言,属于接口回调
但对第二行而言,属于接口回调还是上转型,还是两者皆有?

另: 第一行myFather可以调用setName()方法,但在第二行father可不可以调用setName()方法?

1个回答

u011921490
u011921490   2015.08.29 14:42

都属于向上转型。 接口回调和上下转型不是同一概念。

Csdn user default icon
上传中...
上传图片
插入图片