我正在尝试实现一个名为board Board
的接口,但每当我尝试向我在其中创建的ArrayList中添加任何内容时,它都会抛出
- Syntax error on token(s), misplaced construct(s)
- Syntax error on token "Tile1", VariableDeclaratorId expected after this
token
这是完整的代码:
import java.util.ArrayList;
public interface BoardTest {
public ArrayList<Land> lands = new ArrayList<Land>();
Land Tile1 = new Land(0,1,0,0,0, "Tile 1");
lands.add(Tile1);
}
非常感谢任何帮助!
答案 0 :(得分:4)
接口无法实现。
您无法在界面中创建ArrayList或调用其任何方法。你所能做到的就是为一个方法创建一个方法签名,这个方法可能会也可能不会像你写的那样去做。
界面的整个想法是将“什么”与“如何”分开。
也许你的意思是:
public interface Board {
void land(Land l);
}
public class BoardImpl implements Board {
List<Land> squares = new ArrayList<Land>();
public void land(Land l) {
this.squares.add(l);
}
}
答案 1 :(得分:2)
Interface
仅包含method
声明和初始化字段声明。
您不能在接口中使用方法调用之类的语句。
你应该使用一个实现接口的类,并在那里做所有这些东西。并且只需在您的界面中进行方法声明。