【发布时间】:2014-03-16 07:24:46
【问题描述】:
如果我有返回引用类型值的公共方法,它是当前类中的私有字段,我需要返回它的副本吗?在我的情况下,我需要返回列表,但是这个方法经常被调用,我的列表包含大约 100 个项目。关键是如果我返回相同的变量,每个人都可以修改它,但如果我返回一个副本,性能会下降。在我的情况下,我试图生成数独表,这不是快速过程。 内部类 SudokuTable 保存值及其可能值。公共类 SudokuGame 处理 UI 请求并生成/解决 SudokuTable。选择性能而不是 OOP 原则是一种好习惯吗?如果有人想使用我的 SudokuTable 类创建另一个库,他不会意识到他可以通过修改它返回的 List 来阻止它的状态。
【问题讨论】:
-
我建议你展示你到目前为止编写的属性和访问方法的代码,以便让你的问题更容易理解。