java反射学习之一反射机制概述
一、反射机制背景概述
1、反射(reflection)是java被视为动态语言的一个关键性质
2、反射机制指的是程序在运行时能获取任何类的内部所有信息
二、反射机制实现功能概述
1、只要给定类的全名,就能通过反射获取类的所有信息
2、程序在运行是能够获取任何一个对象所属的类对象
3、在运行时可以获取类的所有属性,并对其操作
4、在运行时可以获取类、父类的所有方法并调用
5、当前的主流框架struts2、srping、hiberate等框架的核心功能都是通过java反射机制来实现的
三、反射相关对象的机制与实现
1、Class对象的机制与实现
(1)Class对象概述
Class就是类的类型
(2)Class常用方法
getName()获取类的完整名称
getDeclaredFields()获得类中的所有属性
getDeclaredMethods()获取类中所有的方法
getConstructors()获得类的构造方法
newInstance()实例化类的对象
等等。。
2、获取类的三种方式
(1)Class.forName(String className),className必须是类的全路径
(2)Book book = new Book(); book.getClass();
(3)Book.Class;
在java反射机制中,还有许多重要的对象,比如Field,Method等,此处不一一介绍,可以通过查看javaAPI了解其功能。