`
lowzoom
  • 浏览: 26626 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

关于Java反射中基本类型的class问题

    博客分类:
  • Java
阅读更多
1. 基本类型的class和其对应包装类的class是不同的,所以在获得Method指定参数的时候,需要精确指定参数的类型,即 setInt(int x) 无法使用 getMethod("setInt",Integer.class) 获得。

2. 基本类型的class无法通过Class.forName方法获得,可以通过 类型名.class 或者 对应包装类的静态字段 TYPE 获得。
若要动态获得基本类型的class,可以考虑把class存进一个Map中进行读取。

private static final Map<String, Class<?>> primitiveClazz; // 基本类型的class

private static final String INTEGER = "Integer";
private static final String BYTE = "Byte";
private static final String CHARACTOR = "Charactor";
private static final String SHORT = "Short";
private static final String LONG = "Long";
private static final String FLOAT = "Float";
private static final String DOUBLE = "Double";
private static final String BOOLEAN = "Boolean";

static
{
	primitiveClazz = new HashMap<String, Class<?>>();
	primitiveClazz.put(INTEGER, int.class);
	primitiveClazz.put(BYTE, byte.class);
	primitiveClazz.put(CHARACTOR, char.class);
	primitiveClazz.put(SHORT, short.class);
	primitiveClazz.put(LONG, long.class);
	primitiveClazz.put(FLOAT, float.class);
	primitiveClazz.put(DOUBLE, double.class);
	primitiveClazz.put(BOOLEAN, boolean.class);
}


3. 基本类型class的泛型参数使用对应的包装类进行指定。例如

Class<Integer> clazz = int.class;


分享到:
评论

相关推荐

    JAVA反射机制-Class类-Class对象的获取.pdf

    JAVA反射机制-Class类-Class对象的获取.pdf

    Java反射机制总结

    这是一本关于Java反射机制论文集合的书。其中包含基本的理论及各种实例。... 关键字有:Java Java反射机制 Java反射 Java反射理论 Java反射实例 Java反射例子 反射原理 反射 网络论文 集合 汇总 总结 Class。

    java反射jar包中class,并可进行文件比较

    java反射jar包中class,并可进行文件比较

    在Java的反射中,Class.forName和Class

    在Java的反射中,Class.forName和ClassLoader的区别共4页.pdf.zip

    java反射JAVA REFLECT (java 反射)

    JAVA REFLECT (java 反射) 取得类的继承结构 - 类所在的包; |- public Package getPackage() - 类的声明方式; |-取得全类名:public String getName() |-只取类名: public String getSimpleName() - 类所继承...

    JAVA反射机制详解视频

    (获取class文件对象的三种方式) (通过反射获取无参构造方法并使用) (通过反射获取带参构造方法并使用) (通过反射获取私有构造方法并使用) (通过反射获取成员变量并使用) (通过反射获取无参无返回值成员方法并使用) ...

    java反射 反编译:.class--&gt;.java

    二,反射机制的作用: 1,反编译:.class--&gt;.java 2,通过反射机制访问java对象的属性,方法,构造方法等; 这样好像更容易理解一些,下边我们具体看怎么实现这些功能。

    java反射机制知识点

    java反射机制基础学习。Class、Method、Field

    java反射知识点

    这种动态获取的信息以及动态调用对象的方法的功能称为java语言的反射机制。 我的代码里主要有一下知识点: 1.获取Class对象的三种方式 2.获取构造方法并调用 3.获取成员方法 4.获取成员变量 5.反射数组 6.通过反射...

    Java 反射封装 JavaBean

    使用 Java 反射封装 JavaBean &lt;br&gt; 说明:这个程序在没有使用Hiberante时挺有用的 需要一个数据库查询语句 对应的JavaBean的全名(现在是Class,原来Class.getName()) 返回List包含多个JavaBean

    Java反射技术的一般应用

    在向学生讲解Class.forName()方法的使用时,有时需要扩展讲解为什么这样书写的原理,于是,扩展讲解Java反射技术可以查看被监视类的方法(构造方法和普通方法)、公有属性的功能,以达到封闭功能的效果。该例子使用...

    java习题-反射-chap15.pdf

    Chp15 反射Key Point ●Class 对象及其基本操作●Method 对象以及invoke 方法●标注练习 1. (类对象)要获得类对象,有三种不同的方式,分别为_____________________、___________________、_____________________...

    Java常用的反射方法

    代码中包含的方法有如下 : 1. 创建一个Person实体类 2. 反射获取Class类对象的三种方法 2.1 通过全类名的方式获取 2.2 类名.class 2.3 实例对象.getClass() 2.4 总结 3. 反射获取属性变量 3.1 获取所有...

    JAVA反射机制动态调用 计算器对象的加法,减法函数;JAVA反射机制修改一个学生对象 的私有数据成员

    使用JAVA反射机制动态调用 计算器对象的加法,减法函数。 使用JAVA反射机制修改一个学生对象 的私有数据成员(不允许调用setters) 使用的类有Class, Method, Field

    Java反射机制知识

    里面主要是介绍Java反射的只是,包括介绍Class类的初始化,如何通过反射动态加载类和获取类的信息等。

    java反射.ppt

    每当一個类被载入时,JVM就自动为其生成一个Class对象,通过操作class对象,我们可以得到该对象的所有成员并操作它们 public class ClassDemo { public static void main(String[] args) { String name = “ACCP"; ...

    Java 反射(Reflection) 经典实用例子

    原理性的问题不是本文的重点,接下来让我们在实例中学习这套精彩的机制。 1. 得到某个对象的属性 public Object getProperty(Object owner, String fieldName) throws Exception { Class ownerClass = owner....

    Java泛型的用法及T.class的获取过程解析

    主要介绍了Java泛型的用法及T.class的获取过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

    java 反射Reflection;Class类

    1.反射机制概述 java能够反射的前提:已经加载过这个类 反射可以通过类名来寻找这个类的所有相关信息、类似于人类的记忆,事先在记忆中有了这个事物的信息,人就可以通过名字来在记忆中寻找事物的具体...java反射机制的

Global site tag (gtag.js) - Google Analytics