<分区>
例如,我有一个构建 GUI 的类,一个处理 GUI 的所有事件的类和包含受 GUI 对象(主要是 slider )影响的所有对象的主类和 GUI 的实例-类和事件类。
现在,事件类的构造函数将 GUI 类和每个被 GUI 更改的对象作为参数。这些是相当多的对象,所以我现在拥有的参数数量约为 8 个,并且还在增加。
有没有更优雅的解决方案来解决我的问题,30 个参数根本感觉不对?
ps,我宁愿不合并类,因为这三个类都非常大,并且会使所有内容的可读性大大降低。
<分区>
例如,我有一个构建 GUI 的类,一个处理 GUI 的所有事件的类和包含受 GUI 对象(主要是 slider )影响的所有对象的主类和 GUI 的实例-类和事件类。
现在,事件类的构造函数将 GUI 类和每个被 GUI 更改的对象作为参数。这些是相当多的对象,所以我现在拥有的参数数量约为 8 个,并且还在增加。
有没有更优雅的解决方案来解决我的问题,30 个参数根本感觉不对?
ps,我宁愿不合并类,因为这三个类都非常大,并且会使所有内容的可读性大大降低。
最佳答案
在这种情况下,通常会使用语法流畅的构建器对象。你改变:
new XYZEvent(a, null, null, b, null, c, d, null, null)
到
new XYZEventBuilder().setA(a).setB(b).setC(c).setD(d).build()
关于java - 类构造函数中大量参数的优雅替代方案,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6395961/