在学习的过程中,竟然被我忽略掉了一个细节。
public static <T> void sort(List<T> list,
Comparator<? super T> c)
这是Collections类中的一个静态方法,让我搞不懂的地方是,为什么static后面会有一个<T>这个东西。
后来去查了一下,原来这就是泛型方法。如果没有这个<T>的定义,在后面参数中使用泛型就会报错。
类似一种预定义吧? 当然这个泛型T 还可以写成一些类的子类。 <T extends XX类 >
方形方法的好处
import java.util.List;
public class Fan {
public static void main(String[] args) {
Fan.see(new Pig()); // 这行代码编译通过不了,保证了参数类型的确定性
Fan.see(new Son());
}
public static <T extends Father> void see(T t) {
//do something ...
}
}
class Father {
}
class Pig {
}
class Son extends Father {
}
也就是说,使用了泛型方法,在代码编译的过程中就能发现一些可能忽略的错误。
分享到:
相关推荐
java 泛型方法使用示例 java 泛型方法使用示例 java 泛型方法使用示例
这是一个使用JAVA实现的泛型编程,分为两部分,第一部分创建泛型类,并实例化泛型对象,得出相加结果。 第二部分用户自行输入0--4,选择要进行的加减乘除运算或退出,再输入要进行运算的两个数,并返回运算结果及...
Java泛型编程指南.pdf 此文章译自SUN的泛型编程指南
Java Generics and Collections 英文版,详细描述java 泛型技术
Java泛型,泛型接口、泛型方法实例
java 泛型接口示例 java 泛型接口示例 java 泛型接口示例
java 泛型类的类型识别示例 java 泛型类的类型识别示例 java 泛型类的类型识别示例
1.java泛型定义.zip1.java泛型定义.zip1.java泛型定义.zip1.java泛型定义.zip1.java泛型定义.zip1.java泛型定义.zip1.java泛型定义.zip1.java泛型定义.zip1.java泛型定义.zip1.java泛型定义.zip1.java泛型定义.zip1....
java 带两个类型参数的泛型 java 带两个类型参数的泛型
java泛型技术之发展,学习JAVA 泛型的不错东东
4.java泛型的限制.zip4.java泛型的限制.zip4.java泛型的限制.zip4.java泛型的限制.zip4.java泛型的限制.zip4.java泛型的限制.zip4.java泛型的限制.zip4.java泛型的限制.zip4.java泛型的限制.zip4.java泛型的限制.zip...
本人搜集的资料,看了这三篇,泛型彻底理解了。
深入理解java泛型,包括类名泛型的定义,方法泛型定义,泛型的返回
主要介绍了Java泛型的用法及T.class的获取过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
java,学习java泛型,java培训之泛型.pptxjava培训之泛型.pptxjava培训之泛型.pptxjava培训之泛型.pptx
很好的Java泛型的总结,看完之后你一定会知道java泛型的底层机制,你一定会学会Java泛型!
Java中的泛型,在运行时刻其具体类型是被擦除的,这样我们就不能用new T(),instanceof等关操作,特别是对泛型类型的类的实例化问题,在此根据《Thinking in Java》中所讲的对类型擦除所带来问题的三种解决方案,比较...
java泛型详解.pdf
思维导图之Java泛型详解