反射生成对象 获得方法及构造器
来源:互联网 发布:手机淘宝咋退货退款 编辑:程序博客网 时间:2024/06/06 03:59
实体类:
package com.ashin.test;public class AshinDemo { private String name; private String id; public AshinDemo(String name, String id) { super(); this.name = name; this.id = id; } public String getName() { return name; } private void setName(String name) { this.name = name; } public String getId() { return id; } public void setId(String id) { this.id = id; } @Override public String toString() { return "AshinDemo [name=" + name + ", id=" + id + "]"; }}
反射类
package com.ashin.test;import java.lang.reflect.Constructor;import java.lang.reflect.Method;public class ReflectDemo { /** * @param args * @throws Exception */ public static void main(String[] args) throws Exception { //生成当前线程的类加载器 ClassLoader classLoader = Thread.currentThread().getContextClassLoader(); //加载类 @SuppressWarnings("unchecked") Class<AshinDemo> clazz = (Class<AshinDemo>) classLoader.loadClass("com.ashin.test.AshinDemo"); //获得构造器 Constructor<AshinDemo> constructor =clazz.getConstructor(String.class,String.class); //使用获得的构造器生成对象 AshinDemo ashinDemo = (AshinDemo)constructor.newInstance("ashin","01"); //使用获得的构造器获得方法 Method setName =clazz.getMethod("setName", String.class); //使用invouke来使用获得的方法 setName.invoke(ashinDemo, "Ben"); //使用获得的构造器获得方法 实体类中是私有的 暴力访问getDeclaredMethod Method setName2 =clazz.getDeclaredMethod("setName", String.class); //取消java语言的访问检查 setName2.setAccessible(true); //使用invouke来使用获得的方法 setName.invoke(ashinDemo, "Ben"); System.out.println(ashinDemo); }}
0 0
- 反射生成对象 获得方法及构造器
- 反射 创建对象及访问构造方法
- java 反射获得构造方法
- 反射:获得String的所有构造方法
- Java反射---Class对象,获得类的方法、成员变量和构造函数信息
- scala 反射生成对象方法
- 反射创建带boolean类型的构造器,来获得对象,结果异常
- [Java]反射机制及构造对象
- 反射获取构造器对象
- 反射获取构造方法并创建对象
- java基础之通过反射获得和使用类的字段、方法、构造器,等
- Java反射机制之获得构造函数的方法
- Java反射机制概念及构造方法的反射
- java反射机制 以及通过反射获得类的变量字段,方法,构造函数
- java反射机制 以及通过反射获得类的变量字段,方法,构造函数
- js构造方法生成对和工厂方法生成对象
- Java反射创建对象-自适应构造器
- 快速生成构造方法及get,set
- 关于JAVA中的listener回调机制,以及其在Android中的使用
- XML配置文件
- ERROR 1146 (42S02): Table 'voucherdb.fvr_vouchersummary' doesn't exist
- DB2数据库的学习及总结
- kth largest element in an array
- 反射生成对象 获得方法及构造器
- java中HashMap的用法
- 《TCP/IP卷》读书笔记
- poj 1990 MooFest(转化成树状数组求和)
- spark sql基本使用方法介绍
- 安卓中的动画分类概述
- Ubuntu - VGA 外接显示器调节分辨率1920x1080
- LeetCode之根据升序的单链表构造平衡二叉树
- Python简单的SOCKET编程