我有一个班级Tile
,以及一个扩展Terrain
班级的班级Tile
。
在Terrain
课程中,我有其他课程,例如Dirt
和Rock
,它们都扩展了Terrain
课程。
我想在({1}}类
中制作(例如)Dirt
个对象
瓷砖类:
Tile
地形类:
public class Tile {
int id;
public static Tile dirt1 = new Dirt(1);
public Tile(int id) {
this.id = id;
}
}
我应该如何构建public class Terrain extends Tile {
public Terrain(int id) {
super(id);
}
public class Dirt extends Terrain{
public Dirt(int id) {
super(id);
}
}
public class Rock extends Terrain{
public Rock(int id) {
super(id);
}
}
}
或Dirt
对象?
答案 0 :(得分:0)
您可以让Dirt
和Rock
类保持静态,并实例化它们:
public static Tile dirt1 = new Terrain.Dirt(1);
或者如果你是非静态的,你需要在创建Terrain
Dirt
的实例
public static Tile dirt1 = new Terrain().Dirt(1);
在这种情况下,您需要在Terrain
和Tile