java - 从 OOP 设计的角度来看,通过对象传递参数的最有效实现是什么?

标签 java android oop parameter-passing

enter image description here

我想创建一种方法来创建任意数量的玩家对象(存储在 PlayLogic 的 ArrayList 中)。现在我决定只创建 2 个玩家对象。我通过调用 createPlayers(2) 在 PlayActivity 中对此进行硬编码,因此这个的实现...最好将参数传递给 Play,然后将参数传递给 PlayLogic,后者创建 2 个玩家对象..或者我直接从 PlayActivity 调用 PlayLogic 更好吗? 我希望我的设计能够反射(reflect)高效的设计(因此我希望关系尽可能少,不确定这是否是正确的 UML 术语......)。

最佳答案

在此过程中增加一个额外的层会产生少量的开销。这种开销不足以导致设计困惑(不正确的抽象)。之所以有额外的开销,是因为您在多层方法中向其他人询问信息。例如:

对于相同的信息,2 个人之间的沟通速度比 3 个人更快,请遵循以下示例:

A -> B (what is 2+2)  
B-> A (4) 

VICE

A->B (what is 2+2)  
B->C (what is 2+2)  
C->B (4)  
B->A(4)

您进一步讨论了性能,但选择使用ArrayList,这种数据结构可能不正确,我们需要有关底层对象模型和操作的更多信息将在执行过程中最常执行。

关于java - 从 OOP 设计的角度来看,通过对象传递参数的最有效实现是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13121884/

相关文章:

android - 将毫秒转换为 Joda 日期时间或区域 0000

android - 不要在 DatePicker 中接受过去的日期

javascript - 获取方法的实例所有者

c - 使用了未初始化的局部变量 “m”

java - Android 正确使用 boolean 值

java - 将文件从 autoexec jar 复制到 java.io.tmpdir

java - 为什么大写在这里没有正确排序?

android - 是否有跨平台框架可以访问 Android、iOS 和 Windows Phone 的短信内容?

java - 读取 java 属性文件,值始终为空

java - 如何显示kafka中的每个分区而不是每个记录?