目 录CONTENT

文章目录

Java 学习笔记 泛型

Stars-one
2019-03-28 / 0 评论 / 0 点赞 / 3 阅读 / 0 字

泛型

  • 上界匹配 ? extends Number
  • 下界匹配 ? super Number

getSimpleName 不包括包名
getName 会包括包名
常和反射联合使用,做框架
Type是一个标识符接口,通过getClass().getGenericSuperclass()获得
我们需要将此强制转型为其的子类ParameterizedType类来使用
例如有一个框架

public class Dao<T,PK extends Number>{
    public Dao(){
        ParameterizedType parameterizedType = (ParameterizedType) getClass().getGenericSuperclass()
        Type[] types =parameterizedType.getActualTypeArguments();//两个泛型,T和PK
        String name = types[0].getSimpleName();//获得传入的T类的简单名字
    }
}
//通过继承来实现不同类的代码封装
public class StudentDao extends Dao<Student,Integer>{

}
//上面的name显示的就是Student
0

评论区