为了账号安全,请及时绑定邮箱和手机立即绑定

单例多态。

单例多态。

慕尼黑8549860 2021-12-10 16:28:33
让我们假设我有棋盘的单例表示,由双维单元阵列组成。有时我希望这种表示被视为行板,有时是列,有时是网格,但这种情况下的每一种都必须在相同的底层单例板上工作所以我有 4 个类要实现:class CheesBoard : singleton consist of just a stright dd array of cellsclass CheesBoardAsGrids : consist of that same cells but presented by gridsclass CheesBoardAsRows : strigtforward as above but rowsclass CheesBoardAsColumns : ... you already get it而且我不知道它们之间应该建立什么样的关系才能使其最具可读性和可重用性例如:我不能从 CheesBoard 继承,因为它是单身
查看完整描述

1 回答

?
aluckdog

TA贡献1847条经验 获得超7个赞

单例,顾名思义,是一个你想被实例化不超过一次的对象。


您可以创建抽象类 Board。该课程CheesBoardAsGrids,CheesBoardAsRows并CheesBoardAsColumns从这个类继承。CheesBoard 类应该包含 Board 变量。


如果你想让你的单例用一些数据初始化,你可以在 getInstance 方法之后用数据加载它。


CheesBoard 类应该包含 init 方法。此方法将获取 Board 参数并初始化 Board 变量:


Board board = new CheesBoardAsGrids();

CheesBoard singleton = CheesBoard.getInstance();

singleton.init(board);


查看完整回答
反对 回复 2021-12-10
  • 1 回答
  • 0 关注
  • 111 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信