A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

© 纪建伟 初级黑马   /  2013-9-12 18:05  /  984 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

如何在接口中自定义泛型?需要注意哪些细节呢?
/*
在接口中自定义泛型。
在接口中自定义泛型的格式:
interface 接口名<泛型的声明>{
  
}
接口中自定义泛型的应用场景:如果接口中的方法不知道方法中操作的具体类型数据,那么则可以使用自定义泛型,等待接口中实现者确定。
接口中自定义泛型注意的细节:
1. 如果实现类可以确定操作接口中的数据的具体类型,那么可以在实现的时候指定具体的数据类型。
2. 如果实现类在实现的时候还不能确定接口操作的具体数据类型的时候,那么可以不指定,默认是Obejct 数据类型。
3. 如果实现类在调用方法的时候可以确定泛型的类型,那么必须要在类声明泛型,也接口也要写上泛型的声明。

*/
interface A<T>{

public void print(T t);

}

public class Demo7<T>  implements A<T>{  // A接口存在自定义泛型,那么Demo7实现A接口的时候还没有能确定其操作的数据类型,所以也声明了T是自定义的泛型。
public static void main(String[] args) {
  Demo7 d = new Demo7();
  d.print("abc");
}

@Override
public void print(T t) {
  System.out.println(t);
}
}

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马