2013-02-14 107 views
0

我试图调用内部功能等等......调用内部函数?

scala> def myouter() = { 
    | def myInner() { 
    |  println("In inner now") 
    | } 
    | this 
    | } 
myouter:()type 

scala> myouter().myInner() 
    <console>:9: error: value myInner is not a member of object $iw 
      myouter().myInner() 
        ^

我如何实现这一目标的任何提示?

+0

方法不是一个类/类型,它不包含成员... myInner只是myouter方法范围内的其他方法...我推荐你阅读这本免费的书:http:// www。 artima.com/pins1ed/ – 2013-02-14 22:25:37

回答

6

你不能。内部函数对于它们声明的范围是私有的。

+0

C. Sobrai我不能返回内部函数吗? – dublintech 2013-02-14 22:55:40

+1

@dublintech - 你可以返回内部的_function_,但是它被转换为函数之后。该方法本身仍然是私人的。 – 2013-02-14 23:14:27

+0

@Rex Kerr - 任何片段的机会? – dublintech 2013-02-15 10:29:34