导航:首页 > 编程语言 > javatypeclass

javatypeclass

发布时间:2023-07-30 03:03:20

‘壹’ java 怎么获取t的class

1. public Type getGenericSuperclass()
用来返回表示当前Class 所表示的实体(类、接口、基本类型或 void)的直接超类的Type。如果这个直接超类是参数化类型的,则返回的Type对象必须明确反映在源代码中声明时使用的类型。比如:

import java.lang.reflect.ParameterizedType;
public class GT1 extends GT2<Integer>{
public static void main(String[] args) {
System.out.println(((ParameterizedType)new GT1().getClass().getGenericSuperclass()));
}
}

则输出结果即为:
GT2<java.lang.Integer>

如果此Class代表的是Object 类、接口、基本类型或 void,则返回 null。。如果此对象表示一个数组类,则返回表示 Object 类的 Class 对象。

2. public Type[] getGenericInterfaces()
与上面那个方法类似,只不过Java的类可以实现多个接口,所以返回的Type必须用数组来存储。
以上两个方法返回的都是Type对象或数组,在我们的这个话题中,Class都是代表的参数化类型,因此可以将Type对象Cast成ParameterizedType对象。而 ParameterizedType对象有一个方法, getActualTypeArguments()。
public Type[] getActualTypeArguments()
用来返回一个Type对象数组,这个数组代表着这个Type声明中实际使用的类型。接着使用上面的例子:

import java.lang.reflect.ParameterizedType;
public class GT1 extends GT2<Integer>{
public static void main(String[] args) {
System.out.println(((ParameterizedType)new GT1().getClass().getGenericSuperclass()).getActualTypeArguments()[0]);
}
}

阅读全文

与javatypeclass相关的资料

热点内容
在健康青岛App挂号怎么查询 浏览:269
普通人上网用的是什么服务器 浏览:453
python安装了找不着 浏览:181
常微分第三版答案pdf 浏览:264
安卓机qq怎么开悬浮窗 浏览:63
备孕三年了怎么缓解压力大 浏览:743
登录阿里云服务器黑屏 浏览:336
匿名元组Python 浏览:725
华为运动健康存储的文件夹 浏览:522
cad正多边形命令 浏览:461
压缩比150能加97油吗 浏览:399
linux新建群在哪个文件夹 浏览:794
韵达快运app在哪里签收 浏览:338
阿里云服务器如何绑定备案域名 浏览:273
单片机用什么键盘好 浏览:25
android动画面试 浏览:309
pdf无法删除 浏览:90
ftp删除文件java 浏览:89
裂变棋牌源码 浏览:87
邀月命令江别鹤退婚 浏览:656