gpt4 book ai didi

java - 设置对象的值

转载 作者:行者123 更新时间:2023-11-30 05:58:54 25 4
gpt4 key购买 nike

假设我有一个名为 House 的类,其中包含两个字段

name
address

每个字段都有一个 getter 和一个 setter。

现在我想要 House 类中的另一个名为 setValues 的方法。此方法应该使用来自不同类型的传递对象的属性来设置字段。

创建此方法有两种方法。第一种方式:

private void setHouse(HouseTransfer transer){
name = transfer.getName();
address = transfer.getAddress();
}

或者第二个选项:

private void setHouse(HouseTransfer transer){
setName(transfer.getName());
setAddress(transfer.getAddress());
}

哪一个更“最佳实践”?

最佳答案

在一定程度的粒度上,软件设计比非黑即白的绝对更主观。我不相信这里有绝对“最佳实践”。

话虽这么说,我个人会使用第二种形式。使用 setter 方法的基本思想是,在某些时候您可能需要一些特殊的逻辑来设置该值(例如格式化输入、卫生、验证等)。因此,最有意义的是始终依赖于一个中心位置的任何此类逻辑,而不是分散在设置此变量的代码中的任何位置。

如果您有一个真正简单的示例,其中 setter 只是设置值并且绝对知道不会添加其他逻辑,那么为了简单起见,您当然可以使用第一种形式。第二种形式并没有真正的性能影响,所以我个人只会使用它。

关于java - 设置对象的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3831203/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com