class Apple<T>
{
private Tinfo;
public Apple(){};
public Apple(T info)
{
this.info=info;
}
public void setInfo(T info)
{
this.info=info;
}
public T getInfo()
{
return info;
}
}
class A1 extends Apple<String>
{
public String getInfo()//正确重写了getInfo方法
{
return super.getInfo();
}
public Object getInfo()//错误的重写getInfo方法,返回值类型不正确
{
return super.getInfo();
}
}
class A2 extends Apple
{
public String getInfo()
{
super.getInfo();//这里为什么返回的Object类型
return super.getInfo().toString();
}
}
A2类中的super.getInfo()访问的返回值类型怎么会是Object类型,这个方法重写时,返回值类型明明是String类型啊 |
|