Closed. This question is opinion-based。它当前不接受答案。
想改善这个问题吗?更新问题,以便editing this post用事实和引用来回答。
4年前关闭。
Improve this question
我有一个
哪个更好?
要么
关于/反对使其静态化的论点?我了解成员保持静态意味着什么,我只是对它对最大清洁度/效率/其他方面的影响感兴趣。
我重复相同的模式以返回两个基因的修整版本,寻找基因之间的匹配,寻找动物之间的匹配(包含基因的集合),等等。
想改善这个问题吗?更新问题,以便editing this post用事实和引用来回答。
4年前关闭。
Improve this question
我有一个
Gene
类,可以跟踪基因。 Gene
具有一种计算两个基因之间距离的方法。有什么理由使其静态化?哪个更好?
public static int geneDistance(Gene g0, Gene g1)
要么
public int geneDistance(Gene other)
关于/反对使其静态化的论点?我了解成员保持静态意味着什么,我只是对它对最大清洁度/效率/其他方面的影响感兴趣。
我重复相同的模式以返回两个基因的修整版本,寻找基因之间的匹配,寻找动物之间的匹配(包含基因的集合),等等。
最佳答案
实例,不是静态的
对于这种情况,我认为第二选择显然更好。如果考虑一下,如果您愿意将对象传递给它,则任何方法都可以实现为静态,这似乎只是一种特殊情况,因为另一个参数也是一个实例。
因此,对于对称性和抽象性的搜索由于必须在点运算符的两个实例对象之间进行选择而有些冒犯。但是,如果您将.method
视为.
然后是operator,那实际上不是问题。
另外,执行功能样式链接的唯一方法是使用属性,即实例方法。您可能希望thing.up.down.parent.next.distance(x)
工作。
10-01 22:52