Java的反射基本概念、语法和应用
2016-10-04 21:39
288 查看
1、基本概念:
反射,一种计算机处理方式。是程序可以访问、检测和修改它本身状态或行为的一种能力。
万物皆对象,是Java.lang.Class类下的实例对象。
2、表示方法(语法):
(1) Class c1=类名.class;
(2) Class c2=类的对象.getClass();
(3) Class c3=class.forName("类的全称");
**
3、应用:
动态加载类:
(1)首先获取A类的类类型:Class c=class.forName("类的全称");
(2)建立一个统一的标准(接口)Interface A
(3)通过A类的类类型创建该类的实例化对象:A a=(A)c.newInstance();
(4)任意一类实现接口 Class B implements A{重写A接口的方法}
反射的操作:(method.invoke(对象,参数列表)),这里假设要获取一个名为add(int
a ,int b)的方法信息
1、获取类的类类型:Class
c=类的对象.getClass();
2、 method m=c.getMethod("add",new Class[]{int.class,int.class});
这里也可写成:method m =c.getMethod("add",int.class,int.class);
假设本来是调用a1.add(10,10);
那么其反射操作是是利用m对象来进行方法调用。
则有:
Object
o=m.invoke(a1,new Object[]{10,10});或者写成:Object o=m.invoke(a1,10,10);
4、反射的总结:
反射是程序可以访问、检测和修改它本身状态或行为的一种能力。最重要的是动态加载类,可以获取类、方法、成员变量和构造函数的信息,还可通过反射操作对类的运行绕过编译。
反射,一种计算机处理方式。是程序可以访问、检测和修改它本身状态或行为的一种能力。
万物皆对象,是Java.lang.Class类下的实例对象。
2、表示方法(语法):
(1) Class c1=类名.class;
(2) Class c2=类的对象.getClass();
(3) Class c3=class.forName("类的全称");
**
3、应用:
动态加载类:
(1)首先获取A类的类类型:Class c=class.forName("类的全称");
(2)建立一个统一的标准(接口)Interface A
(3)通过A类的类类型创建该类的实例化对象:A a=(A)c.newInstance();
(4)任意一类实现接口 Class B implements A{重写A接口的方法}
反射的操作:(method.invoke(对象,参数列表)),这里假设要获取一个名为add(int
a ,int b)的方法信息
1、获取类的类类型:Class
c=类的对象.getClass();
2、 method m=c.getMethod("add",new Class[]{int.class,int.class});
这里也可写成:method m =c.getMethod("add",int.class,int.class);
假设本来是调用a1.add(10,10);
那么其反射操作是是利用m对象来进行方法调用。
则有:
Object
o=m.invoke(a1,new Object[]{10,10});或者写成:Object o=m.invoke(a1,10,10);
4、反射的总结:
反射是程序可以访问、检测和修改它本身状态或行为的一种能力。最重要的是动态加载类,可以获取类、方法、成员变量和构造函数的信息,还可通过反射操作对类的运行绕过编译。
相关文章推荐
- java反射的基本概念和简单应用
- JAVA反射的概念、实现功能、应用场合
- 黑马程序员 JavaSE-02 Java基础语法1:基本概念
- Java基础应用之基本语法(自动类型转换与强制类型转换)
- Java中抽象类和接口在概念、语法和应用上的区别和关系
- Java基础总结-基本语法概念-3
- 黑马程序员-JAVA基本的语法概念和常识
- Java 反射的基本应用
- java反射之基本概念
- Java基本概念和基础语法思维导图
- JAVA提高四:反射基本应用
- [java语法]基本语法(5) 面向对象--基本概念
- [Java Web]Web应用基本概念
- Java基础应用之基本语法(重定向输出流实现程序日志)
- javacc jjtree 写法 以及 jj写法 基本语法 以及应用
- Java_反射的基本应用
- javacc jjtree 写法 以及 jj写法 基本语法 以及应用
- JAVA基础再回首(一)——基本概念、JAVA开发工具、JAVA基本语法
- JAVA反射-反射的基本概念
- Java基础总结-基本语法概念-2