Я пишу программу, которая создает игровое поле и использует суперкласс и подклассы для создания платы. По сути, я хочу использовать arrayList, который сохраняет значения, возвращаемые из методов подклассов Cell. Но я не могу понять, как это сделать. То, что я написал в классе BoardGame, дает мне ошибку, и я не могу придумать другой способ сделать это.  Сохранение метода возвращаемого значения в ArrayList
import java.util.ArrayList;
public class BoardGame {
private Die theDie;
BoardGame(){
}
void buildBoard(){
ArrayList<Player> player;
Cell c = new Cell();
ArrayList<Cell>cells = new ArrayList<Cell>();
cells.add(c.landOn());
}
void runSimulation(){
}
int takeTurn(String n){
//since we don't know what we are returning yet
return 0;
}
String toString(String n){
//Since we aren't returning anything yet
return "Nothing";
}
}
public class Cell {
static int landOn(){
//Since we do not know what we are returning
return 0;
}
public String toString(){
//Since we do not know what we are returning
return "Blank";
}
}
public class Star extends Cell {
int landOn(){
//since we do not know what we are returning
return 5;
}
public String toString(){
//since we do not know what we are returning
return "Star: +5";
}
}
public class Lightning extends Cell {
int landOn(){
//since we do not know what we are returning
return -5;
}
public String toString(){
//since we do not know what we are returning
return "Lightning: -5";
}
}
public class X extends Cell {
int landOn(){
//since we do not know what we are returning
return -10;
}
public String toString(){
//since we do not know what we are returning
return "X: -10";
}
}
public class Smiley extends Cell {
int landOn(){
//since we do not know what we are returning
return 10;
}
public String toString(){
//since we do not know what we are returning
return "Smiley: +10";
}
}
Какую ошибку вы получаете именно? – Vahx
Замечание: 'landOn()' in 'Cell' не переопределяется никакими другими методами' landOn() '(он статичен). –