Java反射 基础
来源:互联网 发布:数据眼龙空 编辑:程序博客网 时间:2024/06/04 00:23
import java.lang.reflect.Constructor;import java.lang.reflect.Field;import java.lang.reflect.Method;class ReflectPoint {private int x;public int y;public ReflectPoint(int x, int y) {super();this.x = x;this.y = y;}}public class Test {public static void main(String[] args) throws Exception {//Class类String str1 = "abc";Class cls1 = Class.forName("java.lang.String");Class cls2 = String.class;Class cls3 = str1.getClass();System.out.println(cls1 == cls2); //trueSystem.out.println(cls2 == cls3); //trueSystem.out.println(int.class.isPrimitive()); //基本类型, trueSystem.out.println(int.class == Integer.TYPE); //Integer对应的基本类型字节码, trueSystem.out.println("---------");//构造函数的反射Constructor constructor1 = cls1.getDeclaredConstructor(String.class);String str2 = (String) constructor1.newInstance(new String("ccc"));System.out.println(str2);System.out.println("---------");//成员变量的反射ReflectPoint pt1 = new ReflectPoint(3, 5);Field fieldY = pt1.getClass().getField("y"); //getField要是共有的字段,fieldY是字节码System.out.println(fieldY.get(pt1));Field fieldX = pt1.getClass().getDeclaredField("x"); //getDeclaredField所有声明的都有fieldX.setAccessible(true); //暴力反射System.out.println(fieldX.get(pt1));System.out.println("---------");//函数方法的反射String str3 = "xyz123";Method methodCharAt = String.class.getMethod("charAt", int.class);System.out.println(methodCharAt.invoke(str3, 1));System.out.println("---------");}}/*输出truetrue */
0 0
- java反射(一):反射基础
- [ java ] java基础反射!
- Java 反射基础
- java基础加强--反射
- java反射基础
- java 反射基础学习
- java反射的基础
- Java基础21-反射
- Java基础(反射案例)
- Java基础加强---反射
- java基础加强--反射
- java基础之 反射
- java基础之反射
- Java基础复习:反射
- java反射基础
- Java基础加强: 反射
- Java基础加强--反射
- java反射机制基础
- 对中文乱码问题的一些思考
- Android API 文档
- Leetcode Longest Common Prefix
- 使用mysql notifier无法start或者stop数据库的解决方法
- 【原创】zstack - 协议栈程序精简日志-按键驱动移植
- Java反射 基础
- Hadoop之——FileSystem与NameNode通信示意图
- linux 命令系列之 进程管理,Linux工作管理(71)
- 无法解析的外部符号 EVP_EncryptFinal_ex
- Unity3d iOS 内购详细流程总汇
- list_entry()详解
- 安装双系统win7+centos7后恢复win7引导
- Integer Inquiry 大数相加
- 从汇编的底层代码实现角度深入理解形参和实参