java反射使用示例分享
public class ReflexTest {
public static void main(String[] args)
throws ClassNotFoundException, NoSuchMethodException, SecurityException,
IllegalAccessException, IllegalArgumentException, InvocationTargetException,
InstantiationException {
//参数类型
Class[] paramTypes = new Class[3];
paramTypes[0] = String.class;
paramTypes[1] = Integer.class;
paramTypes[2] = String.class;
//取得方法
Method m = Demo.class.getDeclaredMethod("getSome", paramTypes);
//参数设置
Object[] os = new Object[3];
os[0] = "pp";
os[1] = 4;
os[2] = "3";
//方法调用
m.invoke(Demo.class.newInstance(), os);
}
}
class Demo{
public void getSome(String name,Integer year, String age){
System.out.println("name is :" + name + ";age is :" + age + ";i is :" + year);
}
}
相关推荐
-
JAVA反射机制实例教程
本文以实例形式详细讲述了Java的反射机制,是Java程序设计中重要的技巧.分享给大家供大家参考.具体分析如下: 首先,Reflection是Java 程序开发语言的特征之一,它允许运行中的 Java 程序对自身进行检查,或者说"自审",并能直接操作程序的内部属性.例如,使用它能获得 Java 类中各成员的名称并显示出来. Java 的这一能力在实际应用中也许用得不是很多,但是在其它的程序设计语言中根本就不存在这一特性.例如,Pascal.C 或者 C++ 中就没有办法在程序中获得函数
-
Java中反射的一个简单使用
简介 首先介绍一些不太实用的解释:JAVA反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法:对于任意一个对象,都能够调用它的任意方法和属性:这种动态获取信息以及动态调用对象方法的功能称为java语言的反射机制. 简单使用 反射,在java中是非常常见和好用的一种方式,(但是大家需要知道,他的效率是比较低的,所以要慎用)当然在基于java语言而产生的Android中也是可以使用的,我们可以使用反射来获取一些系统并不开放,但是存在的类,从而调用他的一些方法,下面就简单的写一下
-
基于Java回顾之反射的使用分析
反射可以帮助我们查看指定类型中的信息.创建类型的实例,调用类型的方法.我们平时使用框架,例如Spring.EJB.Hibernate等都大量的使用了反射技术.反射简单示例 下面来演示反射相关的基本操作 首先是基础代码,我们定义一个接口及其实现,作为我们反射操作的目标: 复制代码 代码如下: interface HelloWorldService { void sayHello(String name); } class MyHelloWorld implements HelloWorld
-
Java 反射获取类详细信息的常用方法总结
类ReflectionDemo 复制代码 代码如下: package Reflection; @Deprecated public class ReflectionDemo { private String pri_field; public String pub_field; public ReflectionDemo(){} public ReflectionDemo(String name){} private ReflectionDemo(Stri
-
java类加载器和类反射使用示例
一.一个命令对应一个进程. 当我们启动一个Java程序,即启动一个main方法时,都将启动一个Java虚拟机进程,不管这个进程有多么复杂.而不同的JVM进程之间是不会相互影响的.这也就是为什么说,Java程序只有一个入口--main方法,让虚拟机调用.而两个mian方法,对应的是2个JVM进程,启动的是两个不同的类加载器,操作的实际上是不同的类.故而不会互相影响. 二.类加载. 当我们使用一个类,如果这个类还未加载到内存中,系统会通过加载.连接.初始化对类进行初始化. 1.类加载:指的是将类的c
-
java反射技术与类使用示例
复制代码 代码如下: package com.java.db;import java.lang.reflect.Constructor;import java.lang.reflect.Field;import java.lang.reflect.InvocationTargetException;import java.lang.reflect.Method;import java.util.ArrayList;import java.util.Arrays;import java.util.
-
实例讲解Java编程中数组反射的使用方法
什么是反射 "反射(Reflection)能够让运行于JVM中的程序检测和修改运行时的行为."这个概念常常会和内省(Introspection)混淆,以下是这两个术语在Wikipedia中的解释: 内省用于在运行时检测某个对象的类型和其包含的属性: 反射用于在运行时检测和修改某个对象的结构及其行为. 从它们的定义可以看出,内省是反射的一个子集.有些语言支持内省,但并不支持反射,如C++. 内省示例:instanceof 运算符用于检测某个对象是否属于特定的类. if (obj inst
-
java使用dom4j解析xml配置文件实现抽象工厂反射示例
逻辑描述: 现在我们想在B层和D层加上接口层,并使用工厂.而我们可以将创建B和创建D看作是两个系列,然后就可以使用抽象工厂进行创建了. 配置文件:beans-config.xml.service-class与dao-class分别对应两个系列的产品.子菜单中id对应接口的命名空间,class对应实现类的命名空间. 复制代码 代码如下: [html] view plaincopyprint? <?xml version="1.0" encoding="UTF-8"
-
Java反射机制及Method.invoke详解
JAVA反射机制 JAVA反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法:对于任意一个对象,都能够调用它的任意一个方法:这种动态获取的信息以及动态调用对象的方法的功能称为java语言的反射机制. Java反射机制主要提供了以下功能: 在运行时判断任意一个对象所属的类:在运行时构造任意一个类的对象:在运行时判断任意一个类所具有的成员变量和方法:在运行时调用任意一个对象的方法:生成动态代理. 1. 得到某个对象的属性 复制代码 代码如下: public Object get
-
java根据方法名称取得反射方法的参数类型示例
复制代码 代码如下: /** * 根据方法名称取得反射方法的参数类型(没有考虑同名重载方法使用时注意) * @param obj 类实例 * @param methodName 方法名 * @return * @throws ClassNotFoundException */public static Class[] getMethodParamTypes(Object classInstance, String methodName) throws ClassNotF
随机推荐
- DIV菜单层实现代码
- Centos 7.3下SQL Server安装配置方法图文教程
- Java异常学习之自定义异常详解
- KVM虚拟机的创建、管理与迁移介绍
- javascript 操作文件 实现方法小结
- 解决js页面滚动效果scrollTop在FireFox与Chrome浏览器间的兼容问题的方法
- Android开发之ListView列表刷新和加载更多实现方法
- 点击提交按钮后按钮变灰色不可用状态的三种方法
- PHP改进计算字符串相似度的函数similar_text()、levenshtein()
- PHP将整个网站生成HTML纯静态网页的方法总结
- event.keyCode键码值表 附只能输入特定的字符串代码
- javascript获取checkbox复选框获取选中的选项
- JS实现表单中checkbox对勾选中增加边框显示效果
- nodejs开发微博实例
- 自动检测所有盘然后删除所有分区的默认共享的批处理
- Redis sort 排序命令详解
- 详解Python中with语句的用法
- js页面跳转的问题(跳转到父页面、最外层页面、本页面)
- 抢救你快报废的坏硬盘!(死马当活马医)
- PHP实现文件上传与下载实例与总结