题
没有static关键字的示例1 有效.
带static关键字的示例2 不起作用.
为什么不能在顶级类StaticClass是static?Eclipse说:
Groovy:类'StaticClass'具有不正确的修饰符static.
该类StaticInnerClass可以修改为static.
示例1有效
Start.groovy
assert "static field" == StaticClass.StaticInnerClass.staticField
Run Code Online (Sandbox Code Playgroud)
StaticClass.groovy
class StaticClass { // Just "class", no "static" modifier
static class StaticInnerClass {
static String staticField = "static field"
}
}
Run Code Online (Sandbox Code Playgroud)
示例2不起作用
Start.groovy
assert "static field" == StaticClass.StaticInnerClass.staticField
Run Code Online (Sandbox Code Playgroud)
StaticClass.groovy
static class StaticClass { // Modifier "static" does not work
static class StaticInnerClass {
static String staticField = "static field"
}
}
Run Code Online (Sandbox Code Playgroud)
可能是相关的问题
版本
只有嵌套类可以是静态的(就像在Java中一样).
如果您只是不希望您的类可以实例化,则可以使用static关键字限定类中的各个定义,例如:
class MyClass {
static public count = 1
static incr() {
count = count + 23
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1048 次 |
| 最近记录: |