2011-03-04 8 views
0

클래스에서 Comparable 인터페이스를 구현하고 싶습니다.Java에서 비교 가능한 인터페이스 구현

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

옵션 1 다음 방법 중 어느

옵션 1 맞습니다. 대답은 두 번째 스 니펫의 주석에 있습니다. 명시 적 형 변환은 피할 수 있습니다.

옵션 1은 Java Generics를 이용합니다. Generics

1

"올바른"및 다른 "잘못된"을 부르는 것을 주저하고 있지만 옵션 1은 "더 나은 것"에 대한 자습서에 대한 링크입니다. 옵션 1은 제네릭을 사용하며 제네릭의 주요 이점 중 하나는 어색한 instanceof 다음에 옵션 2의 캐스트를 피하는 것입니다. 그러나 제네릭은 원래 Java의 일부가 아니 었으므로 일부 기존 코드는 여전히 옵션 2 방식을 사용합니다.