我有一个Card类,现在我想创建一个Deck类.我正在查看收藏中可用于存储卡片列表的内容,因为我知道我需要尽可能多地自由操作卡片.
我希望能够在牌组的任何地方插入新牌,随机播放(Collections.shuffle()应该可以使用),偷看任何牌并从顶部,底部和中间的任何位置取出(移除)牌.你可以用一堆卡片做任何事情.例如,没有"仅LIFO"限制.
以下是我到目前为止所发现的以及我对每个问题的看法:
对于我正在尝试做的事情,是否有比上述任何一个更好的预制课程?如果不存在"完美",那么我应该将哪个类用作扩展的基础?
值得注意的是:我现在不知道我是否关心同步.我也从Java 6的角度来看这个,但我对Java 7解决方案持开放态度,特别是如果有一个现成的解决方案.
我会采用List基于方法的方法.您的要求相当模糊,但是List为您想要做的事情提供了良好的基础.我建议List在你的Deck课程中包装一个(而不是Deck扩展一个具体的List类,如ArrayList或LinkedList).所有Deck行为都应由Deck班级定义; 你当然不希望自动继承所有List行为,因为它可能不适合你的Deck对象.
| 归档时间: |
|
| 查看次数: |
629 次 |
| 最近记录: |