使用泛型的好处就是:
1.适用于多种数据类型执行相同的代码
2.泛型中的类型在使用时指定,不需要强制类型转换
泛型一般分为3类,泛型类,泛型接口,泛型方法
泛型类: 即在一个普通类的类名后面添加<T>这种符号即可定义一个泛型类。
泛型接口: 跟泛型类差不多,即在一个普通的接口名后面添加<T>这种符号即可定义一个泛型接口。
实现泛型接口的两种方法:
1.不传入泛型实参
public interface ImpGenerator<T> implements Generator<T>{}
2.传入泛型实参
public interface ImpGenerator implements Generator<String>{}
泛型方法:
在调用方法的时候指明泛型的具体类型 ,泛型方法可以在任何地方和任何场景中使用,包括普通类和泛型类。注意泛型类中定义的普通方法和泛型方法的区别。
泛型方法中一个在修饰符后面带有<T>这种形式,T可以在泛型方法的任意位置和任意多个
例如:
private <T> T method(Generator<T> v);
private <T> void method(Generator<T> v);
private <T> void method(T v);
注意:java中认为是同名函数判断的是函数名和参数,两个一样才认为同名函数,其他返回值,修饰符不考虑
public @interface Lance{
String eat();
int age();
}