gpt4 book ai didi

Java 方法重载最佳实践

转载 作者:行者123 更新时间:2023-12-02 11:24:33 25 4
gpt4 key购买 nike

只是想知道创建具有相同签名的方法的最佳实践是什么

案例1

public void transfer(Department department){
this.department = department;
}

public void transfer(Department department,String postion){
this.department = department;
this.postion = position;
}

案例2

public void transfer(Department department){
this.department = department;
}

public void transfer(Department department,String postion){
transfer(department);
this.postion = position;
}

最佳答案

您可以避免代码重复。

从这个角度来看,选项 2 稍好一些,因为它可以防止重复分配。通常,您可以使用构造函数来执行此操作,然后将其称为构造函数伸缩。要在这里实现真正的伸缩,您应该遵循 Berger 的建议,而让单参数方法调用双参数方法。这向读者传达了该部门实际上导致的设置

除此之外:我在这里看到的真正问题是命名。 transfer() 意味着某些内容被传输。实际上,您的方法只不过是一个setter。它应该相应地命名,例如 setTransferDetails()

关于Java 方法重载最佳实践,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50942257/

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