1.实现类类的泛型类型要和接口的泛型类型一致 class GenericImpl1.2 实现类是普通类implements GenericInterface 2.实现类的泛型类型要包含接口的泛型类型 class GenericImpl implementsGenericInterface
实现类必须要明确指定接口的泛型类型 class GenericImpl implements GenericInterface2.实现一下泛型接口 2.1 定义一个普通类当作类型
public class Cat {
private String name;
public Cat() {
}
public Cat(String name) {
this.name = name;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
@Override
public String toString() {
return "Cat{" +
"name='" + name + ''' +
'}';
}
}
2.2 定义一个泛型接口
public interface SayHello2.3 定义一个泛型实现类{ //声明了一个带有泛型类型的方法 T printT(T t); }
public class SayHelloImplA2.4 定义一个普通实现类implements SayHello { private E e; @Override public T printT(T t) { System.out.println("This is SayHelloImplA "+t); return t; } //getter/setter方法 public E getE() { return e; } public void setE(E e) { this.e = e; } //自定义普通的方法 public void sayHelloE(){ System.out.println("Hello E : "+e); } }
public class CommonImplB implements SayHello2.5 编写测试代码{ @Override public Cat printT(Cat cat) { System.out.println("This is CommonImplB "+ cat); return cat; } }
public class Application {
public static void main(String[] args) {
//1.创建一个 泛型实现类的 对象
SayHelloImplA implA = new SayHelloImplA<>();
implA.printT("我是泛型类-实现类");
implA.setE(100);
implA.sayHelloE();
System.out.println("==================");
//2.创建一个 普通实现类的 对象
CommonImplB commonImplB = new CommonImplB();
Cat huahua = new Cat("huahua");
commonImplB.printT(huahua);
}
}
2.6 测试结果
This is SayHelloImplA 我是泛型类-实现类
Hello E : 100
==================
This is CommonImplB Cat{name='huahua'}
3.完成
Congratulations!
You are one step closer to success!



