A类是泛型类B的子类,本来只有一个方法public void setSecond(Date second)
因为类型擦除,它又继承了一个public void setSecond(Object second)方法,
现有下列语句:
A a=new A();
B<Date> b=a;
b.setSecond(aDate);
然后书上说类型擦除与多态发生了冲突,编译器自动生成了桥方法(后略)
我觉得这个b应该根据参数aDate直接调用public void setSecond(Date second)方法啊,怎么会和
public void setSecond(Object second)方法发生冲突呢,求解答!
因为类型擦除,它又继承了一个public void setSecond(Object second)方法,
现有下列语句:
A a=new A();
B<Date> b=a;
b.setSecond(aDate);
然后书上说类型擦除与多态发生了冲突,编译器自动生成了桥方法(后略)
我觉得这个b应该根据参数aDate直接调用public void setSecond(Date second)方法啊,怎么会和
public void setSecond(Object second)方法发生冲突呢,求解答!
解决方案 »
- 请高手帮忙
- =========象ie7这样的多tab浏览器中,怎样判断tab,是关闭还是刷新,急!=========
- java -jar xxx.jar 时报错(急)?
- 求一关于时间的sql语句~~~~~有点诡异,嘿嘿!望指教!
- 问下ResultSet和RowSet的区别问题?
- 类分别在多个文件中,如何组织?
- 关于内部类的问题
- 学习JAVA的第一个例子程序,不知道那里错了,用JAVAC编译不了
- 有什么方法可以直接得到当前系统应该运行的LookAndFeel的吗?
- 照书抄了个程序都出错,哪位朋友帮我找找错?
- weblogic中的表单认证方式j_security_check如何定义处理它的Action
- javax.swing.*相关问题
当然会类型重复啊
class TT<T>{
void make(int x){}
void make(T t){}
void make(String s){}
<N extends Number> void make(N n){}
void make(TT<?> t){}
}
擦除后:
class TT<T>{
void make(int x){}
void make(Object t){}
void make(String s){}
void make(Number n){}
void make(TT t){}
}