0

我希望我的类实现Comparable接口。以下哪种方法是正确的

选项1:

public Myclass implements Comparable<MyClass>{

  public int compareTo(MyClass o){
   //impl here
  }

}

选项 2:

public Myclass implements Comparable{

  public int compareTo(Object o){
     //check if o  instance of my class
     //impl here
  }


}
4

2 回答 2

4

选项 1。答案在第二个片段的评论中。您将避免显式类型转换。

选项 1 利用 Java 泛型。这是泛型教程的链接

于 2011-03-04T06:04:59.700 回答
1

我会犹豫称一个“正确”和另一个“不正确”,但选项 1 似乎“更好”。选项 1 使用泛型,泛型的主要好处之一是避免在instanceof选项 2 的强制转换之后执行笨拙的操作。但是,泛型最初不是 Java 的一部分,因此一些遗留代码仍然使用选项 2 方法。

于 2011-03-04T06:05:41.513 回答