概述
反射机制背景概述
- Reflection也就是反射 是Java被视为动态(或准动态)语言的一个关键性质。
- 反射机制指的是程序在运行时能够获取任何类的内部所有信息
反射机制实现功能概述
1 . 只要给定类的全名,即可通过反射获取类的所有信息。
2 . 反射可以在程序运行时获取任意一个对象所属的类对象。
3 . 在运行时可以获取到类中所有属性对象,并对其操作(包含私有属性)。
4 . 在运行时获取到类中、父类中所有方法,并调用。
5 . 目前主流的应用框架如Struts2、Hibernate、Spring、SpringMVC等框架的核心全部是利用Java的反射机制来实现的。
Class对象的机制与实现
Class对象的常用方法介绍
getName()
getDeclaredFields()
获得类中的所有属性
getDeclaredMethods()
getConstructors()
newInstances()
获取Class对象的三种方式
1 .静态获取Class.forName("类的全路径加名称")
2 .
类名 demo = new 类名();
Object objectDemo = demo;
objectDemo.getClass();
3 . Class demo = 类名.class
Field对象的机制与实现
Field 对象的常用对象介绍
getName()
getType()
get(Object obj)
set(Object obj,Object value)
setAccessible(true)
注意 getField();
不能获得到私有的属性,注意通过setAccessible(true)启用访问权限
Method 对象的机制与实现
Method对象的常用方法介绍
getName()
getReturnType()
invoke(Object obj,Object ... args)
利用obj对象调用该方法
getParameterTypes()
getDeclaredAnnotations()
获得方法的全部注解
网友评论