欲实现包含了泛型的接口或者抽象类有三种方式:
1.不使用泛型,而是默认Object
2.实现接口或父类时,将泛型确定
3.子类继承为泛型类,延迟到实现类时确定泛型
参考代码:
主函数:
public static void main(String[] args) {
ImpClass1 c1=new ImpClass1();
c1.show("abc");
c1.show(new Dog());
ImpClass2 c2=new ImpClass2();
c2.show("abc");
//c2.show(new Dog());
ImpClass3<Dog> c3=new ImpClass3<Dog>();
c3.show(new Dog());
}
类和接口:
class Dog{
}
interface Inter<T>{
public abstract void show(T t);
}
class ImpClass1 implements Inter{
@Override
public void show(Object t) {
// TODO Auto-generated method stub
}
}
class ImpClass2 implements Inter<String>{
@Override
public void show(String t) {
// TODO Auto-generated method stub
}
}
class ImpClass3<T> implements Inter<T>{
@Override
public void show(T t) {
// TODO Auto-generated method stub
}
}