dha*_*u05 5 groovy static final
class GroovyHello {
public String execute() {
println("Test String is " + TEST)
}
private static final String TEST = "Test"
}
Run Code Online (Sandbox Code Playgroud)
Groovy V.1.6.3中上述代码段的输出是
测试字符串是测试
Groovy V.1.8.6中上述代码段的输出是
测试字符串为空
如果我将声明修改为static(private static String TEST = "Test"
)或final(private final String TEST = "Test"
),而不是两者,则上面的代码片段会成功打印字符串.
我的理论是,由于对象静态和私有,那么您无权访问它,因为它是一个单独的对象。但是,如果它只是私有的,那么您的方法就是对象的一部分并且可以访问它。如果它只是静态的,那么您可以访问该字段 - 默认情况下该字段是公共的。
归档时间: |
|
查看次数: |
7687 次 |
最近记录: |