定义接口:
/**
*
* 自定义泛型的接口
*
* 接口用于规范子类的内容 - 写抽象方法
*/
package Test17_Demo.Demo10;/*
@create 2020--12--07--16:15
*/
public interface MyInterType<T> {
public abstract void method(T t);
}
定义String类型子类:
/**
* 接口的实现类
*
* 定义类的时候,就是指定接口中数据类型 - 必须实现父类接口中的泛型
*
* 在实现接口的时候,必须实现接口中所有的抽象方法和泛型 - 用于父类中不确定子类中的具体类型的时候使用
*/
package Test17_Demo.Demo10;/*
@create 2020--12--07--16:16
*/
public class MyClassInter implements MyInterType<String>{
@Override
public void method(String t) {
System.out.println(t);
}
}
定义Integer类型子类:
/**
* 接口的实现类
*
* 定义类的时候,就是指定接口中数据类型 - 必须实现父类接口中的泛型
*
* 在实现接口的时候,必须实现接口中所有的抽象方法和泛型 - 用于父类中不确定子类中的具体类型的时候使用
*/
package Test17_Demo.Demo10;/*
@create 2020--12--07--16:16
*/
public class MyClassInter02 implements MyInterType<Integer>{
@Override
public void method(Integer t) {
System.out.println(t);
}
}
实现类:
/**
* 测试泛型接口 - 在使用的时候才会确定类型
*/
package Test17_Demo.Demo10;/*
@create 2020--12--07--16:21
*/
public class MyClassInterTest {
public static void main(String[] args) {
MyClassInter myClassInter = new MyClassInter();
//myClassInter.method(123456); - 泛型不匹配
myClassInter.method("ABC");
MyClassInter02 myClassInter02 = new MyClassInter02();
myClassInter02.method(123456);
}
}