Java自学笔记(三):进阶知识
目录
- 泛型
泛型
参考网站:https://www.cnblogs.com/jpfss/p/9929108.html
https://www.cnblogs.com/jpfss/p/9929152.html
- 定义
未指定特定的数据类型,编译的时候再具体化 <T>T:表示方法返回值的类型由调用者决定,这时候相应类定义时不需要加
public class Demo{
private <T> T getListFisrt(List<T> data) {
if (data == null || data.size() == 0) {
return null;
}
return data.get(0);
}
}
//第1个T:表示泛型
//第2个T:表示返回类型是T
//第3个T:表示输入参数类型是T
T:方法的返回值类型为 T,在定义类的时候使用类名+
public class Demo<T>{
private T getListFisrt(List<T> data) {
if (data == null || data.size() == 0) {
return null;
}
return data.get(0);
}
}
//返回值就是Demo<T>实例化传递的对象类型
- 补充:不确定类型class<?>
使用示例:
Class<?> clazz = Class.forName("xuexi1.Puppy"); //forName("package name.class name")
Puppy xx = (Puppy)clazz.newInstance(); //指定类型,newInstance()
xx.work(); //调用Puppy类中的work方法作为测试
浙公网安备 33010602011771号