作者newjoy (职业格斗家)
看板java
标题[问题] 泛型的问题
时间Sat Oct 30 18:18:39 2010
// @ jdk 1.6
public class GenericTest implements Comparable<String>{
public int compareTo(Object o)
{
return 0;
}
public int compareTo(String s)
{
return 0;
}
public static void main(String[] args) {
new GenericTest();
}
}
//----
Comparable的 source code的宣告是 Comparable<T t>
请问为什麽上面的public int compareTo(Object o)会发生
GenericTest.java:1: name clash: compareTo(java.lang.Object) in GenericTest
and compareTo(T) in java.lang.Comparable<java.lang.String> have the same
erasure, yet neither overrides the other
public class GenericTest implements Comparable<String>{
明明我有实作了compareTo(String s),
那在没加@Override的情况下compareTo(Object o)也只不过是一个无关的function而已吧?
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 220.135.248.140
1F:→ idlejustin:我猜是 Polymorphic Arguments 又 String 继承 Object 10/30 19:13