Reputation: 22141
I want my class to implement the Comparable
interface. Which of the following approaches is correct
Option 1:
public Myclass implements Comparable<MyClass>{
public int compareTo(MyClass o){
//impl here
}
}
Option 2:
public Myclass implements Comparable{
public int compareTo(Object o){
//check if o instance of my class
//impl here
}
}
Upvotes: 0
Views: 1211
Reputation: 6608
I'd hesitate to call one "correct" and the other "incorrect," but option 1 seems "better." Option 1 uses generics, and one of the primary benefits of generics is to avoid doing the awkward instanceof
followed by a cast from Option 2. However, generics were not originally part of Java, so some legacy code still uses the Option 2 approach.
Upvotes: 1