首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > J2SE开发 >

关于函数参数不同的调用有关问题!

2012-04-26 
求助:关于函数参数不同的调用问题!!!有一段代码:IRenderingVisitor为一个接口在实际执行的时候,执行accept

求助:关于函数参数不同的调用问题!!!
有一段代码:IRenderingVisitor为一个接口
  在实际执行的时候,执行accept函数
  public void accept( IRenderingVisitor v ) {
  v.visit( this );
  }

实现IRenderingVisitor接口的v对象中,有两个函数visit,其中ElementGroup为实现IRenderingElement接口的一个类
public void visit(IRenderingElement element)

private void visit(ElementGroup elementGroup) 


在执行的时候,accept函数传入的是一个ElementGroup类的对象,两个visit函数应该会调用哪个?是调用IRenderingElement那个参数的函数还是ElementGroup参数的那个函数?很纠结,请大神指教~~~

谢谢!!!

[解决办法]
类型正确的话自动匹配的
[解决办法]
优先匹配参数类型完全一致的函数,但如果找不到则寻找参数类型为其父类的函数。

不过你这里是private,对于外部类的调用来说,是不可见的啊。。。
[解决办法]

探讨

优先匹配参数类型完全一致的函数,但如果找不到则寻找参数类型为其父类的函数。

不过你这里是private,对于外部类的调用来说,是不可见的啊。。。

[解决办法]
应该是调用private void visit(ElementGroup elementGroup)这个函数的,因为传入的是ElementGroup类的对象。
[解决办法]
调用第一个,然后出错

热点排行