java获取泛型类型
来源:互联网 发布:流道ug编程3种方法 编辑:程序博客网 时间:2024/06/04 19:17
package com.example.test;
import java.lang.reflect.Array;
import java.lang.reflect.ParameterizedType;
import java.lang.reflect.Type;
public class Generic extends Base<String> {
public static void main(String[] args) {
Generic c = new Generic();
System.out.println(c.array);
}
Object array;
public Generic() {
array = Array.newInstance(getGenericType(0), 100);
}
}
class Base<T> {
public Class getGenericType(int index) {
Type genType = getClass().getGenericSuperclass();
if (!(genType instanceof ParameterizedType)) {
return Object.class;
}
Type[] params = ((ParameterizedType) genType).getActualTypeArguments();
if (index >= params.length || index < 0) {
throw new RuntimeException("Index outof bounds");
}
if (!(params[index] instanceof Class)) {
return Object.class;
}
return (Class) params[index];
}
}
import java.lang.reflect.Array;
import java.lang.reflect.ParameterizedType;
import java.lang.reflect.Type;
public class Generic extends Base<String> {
public static void main(String[] args) {
Generic c = new Generic();
System.out.println(c.array);
}
Object array;
public Generic() {
array = Array.newInstance(getGenericType(0), 100);
}
}
class Base<T> {
public Class getGenericType(int index) {
Type genType = getClass().getGenericSuperclass();
if (!(genType instanceof ParameterizedType)) {
return Object.class;
}
Type[] params = ((ParameterizedType) genType).getActualTypeArguments();
if (index >= params.length || index < 0) {
throw new RuntimeException("Index outof bounds");
}
if (!(params[index] instanceof Class)) {
return Object.class;
}
return (Class) params[index];
}
}
0 0
- java获取泛型类型
- java获取泛型类型
- java获取泛型类型
- ParameterizedType获取java泛型参数类型
- ParameterizedType获取java泛型参数类型
- ParameterizedType获取java泛型参数类型
- 获取java泛型参数类型
- java 中获取泛型类型
- ParameterizedType获取java泛型参数类型
- java中获取泛型参数类型
- ParameterizedType获取java泛型参数类型
- java获取泛型的真实类型
- java获取泛型参数实际类型
- ParameterizedType获取java泛型参数类型
- java 获取泛型的类型
- java获取泛型的实际类型
- Java反射获取泛型类型
- 【Java】获取泛型的类型
- 公司项目总结
- Android中对Json数据解析实例(网络访问的问题)
- poj1222 EXTENDED LIGHTS OUT 高斯消元
- Zigbee协议栈中文说明
- 使用 Intel HAXM 为 Android 模拟器加速,媲美真机
- java获取泛型类型
- LAMP网站架构方案分析
- Hibernate学习笔记(4)Hibernate映射文件之many-to-many(多对多关联)
- json知识总结
- 【EL表达式】EL表达式入门
- 导入ASIHTTPRequest 提示<libxml/HTMLparser.h> 找不到头文件
- 将sql结构 导出excel
- windows设计
- ArcGIS教程:页面布局基本词汇