欢迎使用CSDN-markdown编辑器
来源:互联网 发布:鹊桥佣金数据哪里查看 编辑:程序博客网 时间:2024/06/16 20:30
Java反射技术-获取构造函数
在Java开发中,难免会遇到使用框架技术,框架技术的底层代码,大量的应用了反射技术,那么,我们可以使用反射技术达到什么样的目的呢?
一个Java类中,必不可少的是构造函数,构造方法和字段.
利用构造函数,我们可以来创建该类的实例;利用构造方法,我们可以调用该类中的功能;利用字段,我们可以修改该类中某个属性的值.
创建反射的对象(Person类)
public class Person { public String person = "superman"; //无参构造函数 public Person() { System.out.println("我是公共无参构造"); } //有参构造函数 public Person(String name) { System.out.println(person+"----"+name); } //私有构造函数 private Person(int num) { System.out.println("我是私有有参构造"); } }
获取构造函数
获取无参构造函数
Class clazz = Class.forName("com.itheima.classReflect.Person");//获取无参构造方法Constructor constructor = clazz.getConstructor();Person person = (Person) constructor.newInstance();System.out.println(person.person);
- 值得注意的是,Java提供了另一种获取无参构造的方法,所以在书写类时,最好添加上无参构造,方便使用放射机制调用
Class clazz = Class.forName(“com.itheima.classReflect.Person”);
Person person = (Person) clazz.newInstance();
- 值得注意的是,Java提供了另一种获取无参构造的方法,所以在书写类时,最好添加上无参构造,方便使用放射机制调用
获取有参构造函数
Class clazz = Class.forName("com.itheima.classReflect.Person");//获取有参构造方法public Person(String name)Constructor constructor = clazz.getConstructor(String.class);Person person = (Person) constructor.newInstance("xxx");
获取私有化有参构造函数
Class clazz = Class.forName("com.itheima.classReflect.Person");//使用getDeclaredConstructor获取在Person类中声明构造方法Constructor constructor = clazz.getDeclaredConstructor(int.class);//设置访问权限为true,破除私有化constructor.setAccessible(true);constructor.newInstance(12);
阅读全文
0 0
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- java 判断字符串中是否包含汉字
- 标题栏中的“无标题”去掉方法
- 排序
- PLSQL 使用技巧
- 微信截屏分享、图片压缩处理!
- 欢迎使用CSDN-markdown编辑器
- Base
- Java 动态加载jar包
- linux项目中常用命令
- H265(HEVC) nal 单元头介绍及rtp发送中的fu分组发送详解
- J2EE系列之Spring4学习笔记(三)--IOC详解(依赖注入)
- 迭代器模式【Iterator Pattern】
- Android中的数据存储(三):SQLite
- Kotlin基础教程-代码编写约定