`
kalin001
  • 浏览: 16333 次
  • 性别: Icon_minigender_1
  • 来自: 苏州
社区版块
存档分类
最新评论

Reflect 机制代码

阅读更多
import java.lang.reflect.Field;
import java.lang.reflect.Method;
import java.lang.reflect.Modifier;

public class Reflect {

	// 获取属性信息
	public static void getFieldsInfo(Class c) {
		Field[] f = c.getDeclaredFields();
		for (int i = 0; i < f.length; i++) {
			System.out.println("\n属  性:\t" + f[i]);
			System.out.println("修饰符:\t"
					+ Modifier.toString(f[i].getModifiers()));
			System.out.println("类  型:\t" + f[i].getType());
			System.out.println("属性名:\t" + f[i].getName());
		}
	}

	// 获取方法信息
	public static void getMethodsInfo(Class c) {
		Method[] m = c.getDeclaredMethods();
		for (int i = 0; i < m.length; i++) {
			System.out.println("\n方  法:\t" + m[i].toString());

			System.out.println("修饰符:\t"
					+ Modifier.toString(m[i].getModifiers()));

			System.out.println("返回值:\t" + m[i].getReturnType());

			System.out.println("方法名:\t" + m[i].getName());

			System.out.print("参  数:\t");
			Class[] p = m[i].getParameterTypes();
			if (p.length == 0) {
				System.out.print("null");
			}
			for (int j = 0; j < p.length; j++) {
				System.out.print(p[j] + "\t");
			}
			System.out.println();

			System.out.print("异  常:\t");
			Class[] e = m[i].getExceptionTypes();
			if (e.length == 0) {
				System.out.print("null");
			}
			for (int j = 0; j < e.length; j++) {
				System.out.print(e[j] + "\t");
			}
			System.out.println();
		}
	}

	public static void main(String[] args) {
		Class c = String.class;
		// c = new Integer(5).getClass();
		// c = Class.forName(new Integer(5).getClass().getName());
		Reflect.getFieldsInfo(c);
		Reflect.getMethodsInfo(c);

	}
}
1
0
分享到:
评论

相关推荐

    Java 反射机制 代码的实例

    Java 反射机制 代码的实例 请认真阅读 运行此代码 只要读懂了 反射机制也就明白了

    java反射机制核心代码

    java反射机制核心代码,小弟一直弄不明白,怎么通过反射来调用私有成员方法,看了这个后,你可以随心调用private方法,和属性,记得添加setAccessable(true),哦,要不还是不行,如:method.setAccessable(true);

    Java中的反射机制Reflect

    NULL 博文链接:https://vvsongsunny.iteye.com/blog/2038054

    Reflect_day01_all.zip

    对java反射通过代码Demo来验证反射的原理,怎么使用,对初学者有很大帮助,对曾经学过的人也是一个总结,有利于巩固。包含了java代码实例和笔记。

    Java高级程序设计实战教程第三章-Java反射机制.pptx

    对于任意一个对象,都能够调用它的任意一个方法,常见的应用如下 逆向代码 ,例如反编译 与注解相结合的框架 例如Retrofit 单纯的反射机制应用框架 例如EventBus 2.x 动态生成类框架 例如Gson Java高级程序设计实战...

    java反射示例代码

    Java反射机制:反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意一个方法和属性;这种动态获取的信息以及动态调用对象的方法的功能。

    爆发::rocket:纯Java注解,快速开发Admin管理后台。不生成任何代码,零前端代码,零CURD,自动建表,注解式API,支持所有主流数据库,支持自定义页面,支持多数据源,提供二核心技术:Spring Boot,JPA,Reflect,TypeScript,NG-ZORRO等。开源不易,记得右上角点个星鼓励作者〜

    专注于业务与核心功能的研发快速迭代:需求变更仅需修改或添加注解配置即可,并进行速度比需求讨论速度还快功能强大:动态条件处理,支持增删改查等功能代理接口,会话存储机制选择,行为日志记录等自动建表:依

    Java基础反射reflect

    反射机制的功能及其强大,再下面可以看到,反射机制可以用来: 在运行时分析类的能力 在运行时查看对象,例如,编写一个toString()方法供所有类使用。 实现通用的数组操作代码。 利用Method对象,这个对象很像C++中...

    ProxyTest.zip

    Java动静态代理机制简介,尤其是动态代理,结合反射机制,为后续的java hook技术打下基础。动态代理需实现java.lang.reflect.InvocationHandler接口和 java.lang.reflect.Proxy 类的支持。

    java静态代理和动态代理详解

    Java中提供了一个java.lang.reflect.Proxy类和java.lang.reflect.InvocationHandler接口来实现动态代理。代理类在运行时会根据被代理接口自动生成,并且可以通过InvocationHandler接口对方法进行增强。

    java相关的2024面试题集锦

    生成这4条指令的最常见的Java代码场景是:使用new关键字实例化对象的时候、读取或者设置一个类的静态字段(被final修饰、已在编译器把结果放入常量池的静态字段除外)的时候,以及调用一个类静态方法的时候 ...

    xml与反射.txt

    有规则的事情,所以现在很多的自动生成代码的软件就是运用反射机制来完成的,只要你按照规则输入相关的参数,所以低 级的程序员慢慢的就被抹杀了,为什么?因为代码都不用写了,随便一个人都会开发,还要程序员干...

    Java中的动态代理模式

    前言:  近一直在分析hadoop的RPC机制。在hadoop中,DataNode和NameNode之间的控制信息的交流是通过RPC机制完成的,采用的是动态代理和java... import java.lang.reflect.InvocationHandler; import java.lang.refle

    Java反射及动态代理

    详细讲解java的reflect包的,阐述反射机制及动态代理的细节问题。其中动态代理部分内容参考网上资料。读完此文,相信会对javaf反射机制有一个完整清楚的了解。尤其应该看看其他中代码举例部分。

    one-jar-boot:One-JAR:trade_mark:的错误修复

    one-jar-boot是底层的JarClassLoader和其他One-JAR引导机制,其中包含One-JAR引导类的源代码()。 那么这个仓库是做什么用的呢? 不幸的是,某些库(例如“适用于Java的AWS开发工具包”)存在问题。 当由one-jar ...

    java设计模式【之】JDK动态代理【源码】【场景:帮爸爸买菜】.rar

    * 动态代理中的静态方法:java.lang.reflect.Proxy.newProxyInstance (ClassLoader(类加载器),interface(接口),handler(监听处理器)) * * 代码示例:《帮爸爸买菜》 * 1.Father: 被代理类,必须需要实现接口 ...

    prototypal_aop_engine

    奥普如果您正在阅读此文件,也许您正在搜索有关此存储库中包含的代码的信息:该代码代表原型、有趣的* AOP 引擎的核心,该引擎实现的机制类似于 SpringFramework 实现的方法代理机制; 这种行为是通过代理类的运行时...

    2.1 空AActor的反射解析

    空AActor自动生成代码的逻辑结构。主要为GENERATED_BODY()宏的展开和gen.cpp的自动生成代码分析

    javaapi和源码-javase_review:回顾JavaSE深入了解源代码,并实现JDKAPI。源代码分析文章可以找到@我的博客

    java ... 第二级别:深刻理解【JVM的类加载机制?网络IO?TCP/IP和HTTP、HTTPS?并发的相关知识?】 java.lang.reflect java.net javax.net.* java.nio.* java.util.concurrent.* 第

    prototypal_aop_engine_android

    prototypal_aop_engine_android 如果您正在阅读此文件,也许您正在搜索有关此存储库中包含的代码的信息:该代码代表原型、有趣的* AOP 引擎的核心,该引擎实现的机制类似于 SpringFramework 实现的方法代理机制;...

Global site tag (gtag.js) - Google Analytics