java 泛型 应用 type
来源:互联网 发布:unity3d是游戏特效么 编辑:程序博客网 时间:2024/05/16 14:45
java中class,method,field的继承体系
java中所有对象的类型定义类Type
说明:
Type : Type is the common superinterface for all types in the Java programming language. These include raw types, parameterized types, array types, type variables and primitive types.
使用
一般我们不直接操作Type类型,所以第一次使用会对这个比较陌生,相对内部的一些概念。
根据Type类型分类,整理了一个type -> class的转换过程,同理也包括处理Generic Type。支持多级泛型处理。
Java代码
- private static Class getClass(Type type, int i) {
- if (type instanceof ParameterizedType) { // 处理泛型类型
- return getGenericClass((ParameterizedType) type, i);
- } else if (type instanceof TypeVariable) {
- return (Class) getClass(((TypeVariable) type).getBounds()[0], 0); // 处理泛型擦拭对象
- } else {// class本身也是type,强制转型
- return (Class) type;
- }
- }
- private static Class getGenericClass(ParameterizedType parameterizedType, int i) {
- Object genericClass = parameterizedType.getActualTypeArguments()[i];
- if (genericClass instanceof ParameterizedType) { // 处理多级泛型
- return (Class) ((ParameterizedType) genericClass).getRawType();
- } else if (genericClass instanceof GenericArrayType) { // 处理数组泛型
- return (Class) ((GenericArrayType) genericClass).getGenericComponentType();
- } else if (genericClass instanceof TypeVariable) { // 处理泛型擦拭对象
- return (Class) getClass(((TypeVariable) genericClass).getBounds()[0], 0);
- } else {
- return (Class) genericClass;
- }
- }
0 0
- java 泛型 应用 type
- Java泛型(Generics Type)
- java 泛型generic type
- Java泛型Type
- Java泛型Type体系
- Java泛型type体系
- java 泛型type
- Java泛型Type体系
- Java泛型Type
- Java Raw Type(Java泛型)
- Java Raw Type(Java泛型)
- Java泛型type体系整理
- 学习Java 泛型 Type体系
- java Generic Type/Parameterized Type/Raw Type
- Database Type vs Java Type
- Java Type VS Hibernate Type
- Java Type VS Hibernate Type
- 详解Java泛型type体系整理
- Android NDK 编译时出现make (e=2): 系统找不到指定的文
- Eclipse导入web项目,ServletActionContext.*() 出错的解決方法
- jsp注册页面实现密码是否一致的检测
- UE复制内容,粘贴到source insight的时候不会自动换行,而是显示为很长一行
- HDFS原理扫盲
- java 泛型 应用 type
- C#.net picturebox动画效果,刷新图像的闪烁问题解决方法
- jpa多条件查询
- web前端之MVC的JavaScript Web富应用开发三:模型和数据
- 千万不要更改计算机名,否则会导致服务器无法启动!!!!!
- 正则表达式零宽断言
- pixhawk中查看cpu使用情况--top
- php之验证码
- android单元测试adb shell am instrument -w