- 1.public <T> void add(T x)//它前边<T>是在告诉编译器说:编译器,我要使用泛型了,这个泛型的名字叫T,事先声明下,你再碰到T,别说不认识啊;有了前边的声明,后边你再在add的参数列表和下边的方法中用T的时候,编译器就不会报错了。
- {
- //.........
- }
-
- 2.public <T> T add(T x)//这里的<T>也是事先声明下,第二个T表示,这个方法的返回值是T类型。
- {
- //......
- }
- 如果你碰到一个方法中没<T>这样的声明,而编译又没有报错,那肯定是在类的定义的时候声明的了<T>。比如如果你写的2方法里边没有<T>,而它属于类Students
- 那么Students的定义肯定是这样的。
- Student <T>
- {
- //……
- }
- 牢记一点,使用泛型前,一定要先声明下,即<泛型名>
复制代码 |