假设我有一个包含大约 10 个字段的应用程序类。在其他一些实用程序类中,我有以下两种方法之一。这两个中哪个最好用? 是传入整个应用程序对象更好,还是只传入实用方法所需的对象?请解释原因。
public printUsernameAndGroup(String username, String group){
sout(username);
sout(group);
}
public printUsernameAndGroup(Application application){
sout(application.username);
sout(application.group);
}
最佳答案
关于性能,他们两个是一样的。如果您将函数实现为
public printUsernameAndGroup(String username, String group){
sout(username);
sout(group);
}
在调用该函数之前,您将访问对象的用户名和组属性。此外,当您将其实现为
public printUsernameAndGroup(Application application){
sout(application.username);
sout(application.group);
}
您只是传递该对象引用的副本,而不是复制所有 10 个字段,并再次访问它的两个属性。
但如果考虑易用性,第二个会更友好。
关于java - 传递参数的最佳实践,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40603252/