当前位置: 代码迷 >> Java相关 >> [求助]内部类super调用问题 急
  详细解决方案

[求助]内部类super调用问题 急

热度:322   发布时间:2006-10-17 10:56:55.0
[求助]内部类super调用问题 急
请教一下以下代码会返回什么?谢谢!
class aaa
{
public Wrapping wrap(int x)
{
return new Wrapping(x)
{
public int value()
{
return super.value() * 47; //这句总调super.value()不会产生循环吗?
System.out.println(super.value() * 47); //这里应该返回几?
}
};
}

public static void main(String[] args)
{
aaa p = new aaa();
Wrapping w = p.wrap(10);
}
}

搜索更多相关的解决方案: 部类  super  

----------------解决方案--------------------------------------------------------

wrapp的代码是什么?


----------------解决方案--------------------------------------------------------
wrap的代码就是
public Wrapping wrap(int x) //这是一个返回Wrapping类型的wrap方法
{
return new Wrapping(x)
{
public int value()
{
return super.value() * 47; //这句总调super.value()不会产生循环吗?
System.out.println(super.value() * 47); //这里应该返回几?
}
};
}

----------------解决方案--------------------------------------------------------
我是问你的Wrapping这个类的代码
你那个不会产生循环
你用的是递归 总要有一个确定的值啊!!
----------------解决方案--------------------------------------------------------

我也是从书上看的..不知道什么叫递归,但这个例子的大概意思是
new Wrapping()
{

}
实际返回的是一个Wrapping的衍生类..书上就写了这么多代码.
我就是看不太明白...


----------------解决方案--------------------------------------------------------
  相关解决方案