接口名称与其方法参数类型相同

时间:2015-03-03 18:04:08

标签: java

public interface TreeValue {
   public boolean lessThan(TreeValue value)
}

大家好,

我遇到了这个例子,我不知道为什么TreeValue在 method与接口同名。为什么不int? 使用与界面相同的名称有什么好处?

谢谢!

2 个答案:

答案 0 :(得分:3)

这个想法是这个方法lessThan正在比较两个Tree值对象。这类似于任何equals

Object方法

答案 1 :(得分:1)

这与对象的equals签名没有区别......

public boolean equals(Integer otherInteger)

...或implementation of compareTo(其中T定义为Long)。

public int compareTo(Long otherObject)

在这里,您的接口正在定义一个方法,该方法接受另一个实现TreeValue的类,并允许您对其执行操作。在这里,它允许您将两个TreeValue类似的类进行比较,以产生布尔结果。

这里的关键是背景。无论方法如何实际实现,这里的意图是接口作用于另一个实现它的类,从而保持操作的上下文清晰。