gpt4 book ai didi

Java:何时将方法设为静态 v. 实例

转载 作者:IT老高 更新时间:2023-10-28 20:57:33 25 4
gpt4 key购买 nike

我有一个跟踪基因的 Gene 类。 Gene 有一个计算两个基因之间距离的方法。有什么理由让它变成静态的吗?

哪个更好?

public static int geneDistance(Gene g0, Gene g1)

public int geneDistance(基因其他)

支持/反对使其静态化的论据?我了解成员静态意味着什么,我只是对它对最大清洁度/效率/等的影响感兴趣。

我重复相同的模式来返回两个基因的修剪版本,寻找基因之间的匹配,寻找动物之间的匹配(包含基因集合)等等。

最佳答案

实例,非静态


对于这种情况,我认为第二种选择显然更好。如果您考虑一下,如果您愿意将对象传递给任何方法,都可以将其实现为静态,这只是似乎是一种特殊情况,因为其他参数也是一个实例。

因此,我们对对称性和抽象性的研究会因为必须在点运算符的两个实例对象之间进行选择而受到轻微冒犯。但是,如果您将 .method 视为 . 然后 operator,这并不是真正的问题。

另外,进行函数式链接的唯一方法是使用属性,即实例方法。您可能希望 thing.up.down.parent.next.distance(x) 工作。

关于Java:何时将方法设为静态 v. 实例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1618969/

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