反射调用构造方法|学习笔记

简介: 快速学习反射调用构造方法

开发者学堂课程【Java 高级编程反射调用构造方法】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址https://developer.aliyun.com/learning/course/20/detail/381


反射调用构造方法


目录:

1、修改Person类的定义

2、获取构造

3、调用指定构造实例化对象

1.修改Person类的定义


在一个类之中除了有继承的关系之外最为重要的操作就是类中的结构处理 ,而类中的构造里面首先需要观察的是构造法使用问题

实例化方法替代:

clazz . getDeclaredConstructor (). newInstance ():

所有类的构造方法的获取都可以直接通过 Class  类来完成,该类中定义有如下的几种。


获取所有构造方法:

public Constructor <?>[] getDeclaredConstructors ()

throwsSecurityException

获取指定构造方法:

public Constructor < T > getDeclaredConstructor ( Class <?>...parameterTypes )

throws NoSuchMethodException ,SecurityException

获取所有构造方法:

public Constructor <?>[]getConstructors ()

throws SecurityException

获取指定构造方法:

public Constructor < T > getConstructor ( Class <?>.. parameterTypes )

throws NoSuchMethodException ,Security Exception。

 

2.获取构造

此时获取的是类之中的全部构造方法,但是也可以获取 一个指定参数的构造例如:现在的 Person 类之中提供有两个构造:

图片3.png


3.调用指定构造实例化对象

此时程序打算调用 Person 类之中的有参构造方法进行  Person  类对象的实例化处理,必须要指名要调用的构造,再通过 Constructor 类之中提供的实例化方法操作:

public T newInstance (0bject... initargs )throws InstantiationException ,

IllegalAccessException,IllegalArgumentException, InvocationTargetException

范例:图片4.png

虽然程序代码本身允许开发者调用有参构造处理,但 从实际的开发来看所有的使用反射的类中最好提供有无参构实例化来达到统一性


图片5.png


相关文章
|
1月前
|
Java
【反射】Java反射机制 -- 常用构造器与方法
【反射】Java反射机制 -- 常用构造器与方法
35 0
|
2天前
|
Java
java反射-获取类的属性、构造方法、方法
java反射-获取类的属性、构造方法、方法
4 0
|
7天前
|
安全 Java
JAVA反射调用方法
JAVA反射调用方法
|
1月前
调用反射类的指定方法
调用反射类的指定方法
|
1月前
调用反射类的方法
调用反射类的方法
|
1月前
类的无参方法
类的无参方法
|
10月前
|
Java API
Java反射(通过反射获取构造函数、方法、属性)
1.通过反射获取构造函数,2.通过反射获取方法,3.通过反射调用成员属性
93 0
|
IDE 安全 Java
Java 反射机制详解:私有方法调用头大?如何通过反射调用类中的私有方法?
Java 反射机制详解:私有方法调用头大?如何通过反射调用类中的私有方法?
237 0
Java 反射机制详解:私有方法调用头大?如何通过反射调用类中的私有方法?