考虑一个用于保存和报告保龄球俱乐部中保龄球手和球队信息的计划。每周都有一场锦标赛。每名球员以 4 人为一组,打 3 场比赛。球队根据在锦标赛中击败的球队数量来累积积分,并跟踪球员的平均得分。列出类(class)和类(class)职责。
最好的方法是什么?
这些是我迄今为止所上的类(class):
-
BowlerNames
创建一个数组来存储投球手姓名 -
Teams
从 BowlerNames 中的数组中取出名字并将它们放入团队 -
TeamScore
初始化对象TeamScore和玩家分数 -
Game
记录比赛期间投球手的得分 -
points
获取玩家在比赛中的得分并将其添加到他们的团队得分中 -
TeamWin
启动一个胜利对象,如果一支球队的分数比另一支球队大,则为胜利对象加一 -
Average
获取玩家得分对象并计算其平均值
最佳答案
一些建议,仅仅因为你可以,并不意味着一切都必须是一个类。有些事情,例如团队的得分,是有关某人或某事的信息。这些,而不是类,是字段。
你什么时候需要上课?当您想要在代码中表示一个实体、对象或某人时。一个人、一辆车、一个元素,这些都是类的经典例子。
您必须找到要编写代码的不同事物之间的关系,并通过写出想到的想法来赋予它们应有的行为。例如:
- 玩家被分组成队
- 玩家拥有平均得分
- 团队参加游戏
- 团队累积分数
- 所有信息均由程序管理
您还可以提出其他一些想法,但无论何时您都尝试学习识别它们背后的模式。行动通常代表从管理到“了解”某事的责任。主题通常是类,除非您正在谈论一些更高级别的功能。在这些情况下,您有特定的类来管理信息。
我会在这里透露一些信息,但您似乎需要一个起点,不是为了您做这件事,而是为了阐明您应该如何解决问题。先接近,后解决。
TeamScore
毫无用处。顾名思义,它是一个 Team
的分数,所以实际上,它是一个 Team
的属性而不是对象本身,因为它只保存实际分数。如何计算平均值以及如何添加分数取决于您,只需记住您正在编写一个小应用程序
for keeping, and reporting about, information (...)
关于java - 类(class)决定有问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13573107/