【发布时间】:2014-01-16 15:21:30
【问题描述】:
我仍在用 java 编写战舰游戏。
我在模块化方面遇到了麻烦:我需要使用接口构建数据类(模型)。
我得到的想法是建立一个这样的类层次结构:
BattleGrid => 一些方法,Grid => int rows, int cols, Cell[][] grid => char content
这意味着:
1. public 类是 BattleGrid 类(它提供外部方法,如 initGrid()、placeShip() 等);
2. 然后里面还有另一个类,Grid,它包含材质网格和一些信息,如网格行和网格列;
3. 在每个 Cell 中,都有该单元格的内容。
(显然都带有 setter 和/或 getter)
问题是:当我通过 BattleGrid 接口编写此代码时,内部类会自动声明为 public static。
这种结构的正确方法是什么??
【问题讨论】:
-
不确定拥有内部类的不可抗拒的冲动从何而来。无论如何,如果您提供一个代码示例来演示您的问题,那会更清楚。
-
为什么你想要一个BattleGrid接口和一个类Grid?只是问问。
-
不知道 :P 我认为这是将网格隐藏在外面的好方法!!!!
标签: java interface inner-classes