0

这是我的代码,我尝试调用内部类中的方法,如下所示(最后一行,ic = new oc.Inner())。但我得到错误。

我正在使用 groovy 控制台,根据 groovy 文档,我希望可以从外部类调用内部类。我不确定语法。

class Outer {    
      private String privateStr = 'some string'  
       def callInnerMethod() {        
        new Inner().methodA()            
      }      
        class Inner { 
            def methodA() { 
                println "${privateStr}."       
            }     
       } 
}

Outer oc = new Outer()
ic = new oc.Inner() 

这是我得到的结果:

startup failed:
Script1.groovy: 14: unable to resolve class oc.Inner 
 @ line 14, column 6.
   ic = new oc.Inner()
        ^

1 error
4

1 回答 1

0

这个怎么样:

def ic = new Outer.Inner()

这可能仅在您的内部类是静态的情况下才有效。

于 2019-01-16T21:34:07.323 回答