Java 当我将可变对象转换为不可变对象时,方法名称应该如何更改?

Java 当我将可变对象转换为不可变对象时,方法名称应该如何更改?,java,naming-conventions,immutability,Java,Naming Conventions,Immutability,假设我有一个班级规模 随着可变版本,它感觉自然去 size.add(2); 但不可改变的感觉更像这样 newSize = size.plus(2); 我对不可变对象相当陌生。此方法和其他方法的命名约定是什么?即征求意见,而不是事实 您可以让BigDecimal类为您的命名约定提供指导: 但是如果你想用“加”而不是“加”-为什么不呢?这是你的代码,如果你觉得可读,那么就这样做 编辑:请注意,在给出此答案之前,我没有注意到您的stackoverflow历史记录。如果我注意到你不是新手,我可能会

假设我有一个班级规模

随着可变版本,它感觉自然去

size.add(2);
但不可改变的感觉更像这样

newSize = size.plus(2);

我对不可变对象相当陌生。此方法和其他方法的命名约定是什么?

即征求意见,而不是事实

您可以让BigDecimal类为您的命名约定提供指导:

但是如果你想用“加”而不是“加”-为什么不呢?这是你的代码,如果你觉得可读,那么就这样做


编辑:请注意,在给出此答案之前,我没有注意到您的stackoverflow历史记录。如果我注意到你不是新手,我可能会选择闭嘴:)

问题是
add
也用于不可变对象。我建议制定一个适用于所有方法的约定,如
copyAndAdd(2)
addToSelf(2)
,如果您想澄清的话。另一个选择是避免将它们混合在同一类中。就这样吧。