getclass.getGenericsupperclass

2024-06-24 08:58

本文主要是介绍getclass.getGenericsupperclass,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

getClass().getGenericSuperclass()返回表示此 Class 所表示的实体(类、接口、基本类型或 void)的直接超类的 Type
然后将其转换ParameterizedType。。
getActualTypeArguments()返回表示此类型实际类型参数的 Type 对象的数组。
[0]就是这个数组中第一个了。。简而言之就是获得超类的泛型参数的实际类型。。
比如
超类
public class GenericDAO {private Class entityClass;protected GenericDAO() {
(ParameterizedType)
 pt = 
(ParameterizedType)
getClass().getGenericSuperclass()
.getActualTypeArguments()[0]
;

this.entityClass
 = (class<T>) pt.getActualTypeArguments()[0];

}}子类public class OptionManager extends GenericDAO {}测试类public class OracleTest {public static void main(String[] args) throws Exception {OptionManager manager = new OptionManager();}}这样在你new OptionManager();以后超类里的entityClass就是子类那里的public class OptionManager extends GenericDAO 里面的MSGC_OPTION所对应的class对象了..

这篇关于getclass.getGenericsupperclass的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1089690

相关文章

API学习java.lang.Object.getClass

package com.wonders.week01.object;/*** JDK1.7* getClass()* (1)java.lang.Object* (2)方法访问权限修饰符是public* (3)方法的返回值类型是Class* (4)该方法是由final修饰的,不可以改变,不能被继承* (5)Class这个对象代表的是对象运行时的类。* (6)返回的类对象是被代表类的静态同步方法锁定的

ParameterizedType,getClass(),getGenericSuperclass()

子类 public class CustomerDao extends JdbcDaoImpl<Customer>{} 直接父类 ‘ import java.sql.Connection;import java.sql.SQLException;import java.util.List;import org.apache.commons.dbutils.QueryRunne

getInterfaces(),getMethod(String name, Class... parameterTypes),getClass

返回一个 Method 对象,它反映此 Class 对象所表示的类或接口的指定公共成员方法。name 参数是一个String,用于指定所需方法的简称。parameterTypes 参数是按声明顺序标识该方法形式参数类型的 Class 对象的一个数组。如果 parameterTypes 为 null,则按空数组处理。  例:以项目Spring_Test为例 beans.xml <be

class和getClass()

为了解释这class和getClass()这两个概念,我们创建两个类A和B在同一个test包下,如下: package test;public class A {} package test;public class B {} 下面是我们需要了解的一些java概念 类 类是java的一种可以自定义的数据类型,和C++一样,C语言的结构体struct同样是可以自

java的getClass()函数

Java反射学习     所谓反射,可以理解为在运行时期获取对象类型信息的操作。传统的编程方法要求程序员在编译阶段决定使用的类型,但是在反射的帮助下,编程人员可以动态获取这些信息,从而编写更加具有可移植性的代码。严格地说,反射并非编程语言的特性,因为在任何一种语言都可以实现反射机制,但是如果编程语言本身支持反射,那么反射的实现就会方便很多。 1,获得类型类     我们知道在Java中一切都

在java中,getClass().getSimpleName();是什麽?

getClass()获得当前对象的类型...java中有Class类,用以描述类型信息.如用下面的语句Class theClass="hello".getClass();得到的就是字符串的类型. getSimpleName()返回源代码中给出的底层类的简称。 public class sample{ public static void main(String[] args){   /

Class.getResource()、ClassLoader.getResource()和this.class.getClassLoader()及.getClass()和.class

.getClass()和.class的概念 反射,可以理解为在运行时期获取对象类型信息的操作。传统的编程方法要求程序员在编译阶段决定使用的类型,但是在反射的帮助下,编程人员可以动态获取这些信息,从而编写更加具有可移植性的代码。 1,获得类型类 在Java中一切都是对象,一般所使用的对象都直接或间接继承自Object类。Object类中包含一个方法名叫getClass,利用这个方法就可以获得一个实

SpringBoot测试jdbc时dataSource.getClass()出现空指针异常

当我们测试jdbc是否连接成功,出现空指针异常,这时不要慌张,首先检查是否引入依赖,依赖的格式是否正确。 <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-test</artifactId><scope>test</scope></dependency>

android BaseActivity$1.onClick 匿名内部类 this.getClass()问题

我想写一个组件,可以利用注解的方式,自动找到这个View,并且可以找到点击事件的方法,像这样(注解类就不贴出来了):  @ViewClick(viewId=R.id.clickBtn, clickMethod="btnClickMethod")  private Button btnClick;  但是中间遇到了一些问题,log如下所示:   12-27 19:04:51.090: W/Sy

getClass().getClassLoader().getResource() 和 getClass().getResource()

一.两者作用: 在java中加载文件 二.两者区别 .getClass().getResource(fileName) :表示只会在当前调用类所在的同一路径下查找该fileName文件; .getClass().getClassLoader().getResource(fileName):表示只会在根目录下(/)查找该文件; fileName如果是前面加“/”,如"/fileName