反射
qq_42731393
这个作者很懒,什么都没留下…
展开
-
反射07通过注解创建对象
/*要求:通过注解来导入配置文件 */@Pro(className = "cn.icast.day23.Reflection.Demo01",methodName = "show")//想要执行的方法的名称public class Frame02 { public static void main(String[] args) throws ClassNotFoundException, IllegalAccessException, InstantiationException, NoSu原创 2021-02-17 13:56:12 · 155 阅读 · 0 评论 -
反射06读取配置文件来创建对象
* 案例: * 需求:写一个"框架",不能改变该类的任何代码的前提下,可以帮我们创建任意类的对象,并且执行其中任意方法 * 实现: 1. 配置文件 2. 反射 *//* 步骤: 1. 将需要创建的对象的全类名和需要执行的方法定义在配置文件中 2. 在程序中加载读取配置文件 3. 使用反射技术来加载类文件进内存 4. 创建对象 5. 执行方法*/public class Frame { p原创 2021-02-17 13:54:16 · 182 阅读 · 0 评论 -
反射05
/*使用步骤:1。获取构造方法对象 根据有参或者无参可分为两种情况2.根据构造器创建对象的方法:调用newInstance 方法 */public class DemoConstractor { public static void main(String[] args) throws NoSuchMethodException, IllegalAccessException, InvocationTargetException, InstantiationException {原创 2021-02-17 13:17:16 · 64 阅读 · 0 评论 -
反射04
import java.lang.reflect.InvocationTargetException;import java.lang.reflect.Method;/* * Method:方法对象 * 执行方法: * Object invoke(Object obj, Object... args) * 获取方法名称: * String getName:获取方法名 */public class DemoMethod { public static void main(Str.原创 2021-02-17 13:15:25 · 56 阅读 · 0 评论 -
反射03
/*成员变量的相关方法Field:成员变量 * 操作: 1. 设置值 * void set(Object obj, Object value) 2. 获取值 * get(Object obj) 3. 忽略访问权限修饰符的安全检查 * setAccessible(true):暴力反射 */public class DemoFiled { public static void main(String[] args) throws NoSuchF原创 2021-02-17 13:11:59 · 58 阅读 · 0 评论 -
反射02
java程序在计算机中的三个阶段源代码阶段class类对象运行时阶段java源代码写完 ,编译器将源代码编译成class文件类加载器将类按照成员变量成员方法 进行封装 成对象加载到内存中,这就是class类对象阶段创建对象就进入到了运行时期/*java反射概述:01.反射是框架设计的灵魂02.java程序执行的三个阶段:001.源代码阶段:编写代码,编译成字节码文件 即class文件002.class对象阶段:类加载器把字节码按照成员变量,成员方法,构造方法封装成class对象,由此原创 2021-02-17 13:08:39 · 54 阅读 · 0 评论 -
反射概述
Java的反射(reflection)机制是指在程序的运行状态中,可以构造任意一个类的对象,(例如通过配置文件或者注解创建任意的对象)可以了解任意一个对象所属的类,可以了解任意一个类的成员变量和方法,可以调用任意一个对象的属性和方法。(对象可以获取class类对象进而访问成员方法和成员变量)这种动态获取程序信息以及动态调用对象的功能称为Java语言的反射机制。反射被视为动态语言的关键。使用反射的好处首先,反射机制极大的提高了程序的灵活性和扩展性,降低模块的耦合性,提高自身的适应能力。其次,通过反射原创 2021-02-17 11:51:52 · 68 阅读 · 0 评论