Java反射获取字节码以及判断类型
2017-01-10 22:03
246 查看
一、获取类的字节码的三种方法:
1.使用Class.class
Class<?> c1=String.class;
2.使用实例.getClass()
String s=new String("1"); Class<?> c2=s.getClass();
3.使用Class.forName("类全名");
Class<?> c3 = Class.forName("java.lang.String");
二、判断字节码是不是基本类型
三、判断是不是数组:
//判断是不是数组 System.out.println(String[].class.isArray());//true
四、判断基本类型的详细类型
// 判断是不是int 基本类型 System.out.println(int.class==Integer.TYPE);
完整代码
1.使用Class.class
Class<?> c1=String.class;
2.使用实例.getClass()
String s=new String("1"); Class<?> c2=s.getClass();
3.使用Class.forName("类全名");
Class<?> c3 = Class.forName("java.lang.String");
二、判断字节码是不是基本类型
//判断是不是基本类型 System.out.println(c1.isPrimitive());//false
三、判断是不是数组:
//判断是不是数组 System.out.println(String[].class.isArray());//true
四、判断基本类型的详细类型
// 判断是不是int 基本类型 System.out.println(int.class==Integer.TYPE);
完整代码
package cn.lonecloud.Test; import org.junit.Test; public class ClassTest { @Test public void ClassTest() throws ClassNotFoundException{ //获取类的字节码的三种方法: //1.使用Class.class Class<?> c1=String.class; // 2.使用实例.getClass() String s=new String("1"); Class<?> c2=s.getClass(); // 3.使用Class.forName("类全名"); Class<?> c3 = Class.forName("java.lang.String"); System.out.println(c1==c2);//true System.out.println(c2==c3);//true System.out.println(c1==c3);//true // 获取基本类型的字节码 System.out.println(int.class);//int //基本类型的字节码和其包装类是不一样的 System.out.println(Integer.class==int.class);//false //判断是不是基本类型 System.out.println(c1.isPrimitive());//false //判断是不是数组 System.out.println(String[].class.isArray());//true // 判断是不是int 基本类型 System.out.println(int.class==Integer.TYPE); } }
相关文章推荐
- java语言反射的概述以及三种获取字节码文件对应的Class类型的对象的方式
- java 实现BufferedImage和ImageReader两种方式获取图片宽高、判断图片类型、获取图片大小工具类代码以及测试响应结果
- Java有N个数字的int类型数组,如何获取数量最多并且数字最大的数以及数量
- Java利用反射来获取一个方法的 范型化参数 Vector<Integer>的类型
- java 通过反射获取泛型的类型
- [运行时获取模板类类型] Java 反射机制 + 类型擦除机制
- Java反射,根据类名创建带参数的实例(获取参数类型,参数等)
- C#泛型、反射-根据对象名获取该类型以及其属性
- 【转】NET中反射实现 可空类型 与基础类型的转换 以及获取指定属性的大小问题
- java 注解annotation的使用,以及反射如何获取注解
- 黑马程序员--Java基础加强--14.利用反射操作泛型III【解析关于泛型类型的细节信息的获取方法】【Method与泛型相关的方法】【个人总结】
- java中反射机制通过字节码文件对象获取字段和函数的方法
- java利用反射获取对象类名以及对象属性名
- java 注解annotation的使用,以及反射如何获取注解
- java script 判断和获取浏览器的类型
- Java利用反射来获取一个方法的 范型化参数 Vector<Integer>的类型
- JAVA 文件上传后台判断浏览器的类型以及JDK1.5和1.6处理的不同
- java判断循环数组是否连续并获取不连续的项以及重复项
- java反射---获取类型信息
- java 通过反射获取泛型的类型