我目前正在试图弄清楚如何使用Eclipse在java中编写Escape模型.我是Escape和Eclipse的新手,自从我用java编程以来已经有一段时间了,所以请原谅这是一个愚蠢的问题.
基本上,我一直被奇怪的Eclipse错误消息所困扰.我跟踪了最后一个问题:
这有效:
public class CoordinationGame extends Scape {
.
.
.
Scape lattice;
boolean test;
int test2;
{
test = true;
test2 = 3;
}
{
lattice = new Scape(new Array2DVonNeumann());
}
}
Run Code Online (Sandbox Code Playgroud)
这给出了奇怪的错误消息:
public class CoordinationGame extends Scape {
.
.
.
Scape lattice;
boolean test;
int test2;
test = true;
test2 = 3;
lattice = new Scape(new Array2DVonNeumann());
}
Run Code Online (Sandbox Code Playgroud)
即{预期的int test2和Syntax error on token "lattice", VariableDeclaratorId expected after this token.
正如我所说,Java已经有一段时间了,但是IIRC,这些括号不应该被要求.这个问题确定这个括号用法是一个初始化块,但这可能不是我想要做的.
有谁知道为什么Eclipse要求我设置这些括号,或者我可以做些什么来改变这种行为?
提前致谢!马丁
PS:一些可能有用的信息:
我使用eclipse-indigo,安装了建模工具包AMP.我不完全确定如何检查这个,但我相信我正在使用jre6,因为这是我在包浏览器的JRE系统库选项卡中所说的.将来,我计划找到一种使用Groovy运行Escape建模环境的方法,但这将是另一个问题......
这与您的IDE无关.Java不允许在类级别使用语句,但它允许在类级别使用初始化程序.
{foo();}
Run Code Online (Sandbox Code Playgroud)
这是一个实例初始化程序,它将由编译器复制到所有构造函数中.
(请参阅Java教程>初始化字段)
在Java中,您可以编写语句
但没有其他地方.