【发布时间】:2018-08-31 03:01:36
【问题描述】:
这可能是一个愚蠢的问题,但我正在开发一个 2-D Java 游戏,我的一个课程有很多字段。
与其为所有这些字段创建 getter 和 setter 并弄乱类,我认为最好只创建一个主要的 get 和 set 函数来接受这些参数: - 带有我要访问的字段名称的字符串值 - 将字段设置为的值本身(仅限 setter 函数)。
有没有更好的方法来做到这一点,不涉及将所有字段设置为公共或包私有,或者我是否走在正确的轨道上?
基本上我会创建一个数组来保存所有这些字段,但是在查看这些字段的函数时我会失去 NetBeans 自动完成的便利。
【问题讨论】:
-
你可以看看使用 Lombok 库
-
Lombok 是一种选择,或者将其中一些变量放入一个集合中。或者,也许你的班级太杂乱了,应该分成多个班级。
-
也许看看AutoValue。
-
你考虑过
Properties吗?如有必要,您可以按类型对属性进行分组,但如果您不介意必须根据属性名称知道属性类型的脆弱性,则不必这样做。 -
Netbeans 的“封装字段”重构可以为您节省所有这些 getter 和 setter 的输入,如果这是您实际上试图避免的。但是你真的应该考虑将你的班级分成几个更小的班级,每个班级都有更少的字段。
标签: java