`
yidongkaifa
  • 浏览: 4038183 次
文章分类
社区版块
存档分类
最新评论

android 中使用Java反射Reflect,输出类中变量值,方便调试。

 
阅读更多

Android开发中调试中,我们经常需要输出类的数据。
例如我们经常需要看一下,下列Data类的数据。

public class Data {
private int id;
private String name;
private String url;
private Bitmap bitmap;
private Long t;
private String status;
	public int getId() {
		return id;
	}
 	public void setId(int id) {
		this.id = id;
	}
public String getName() {
		return name;
	}
public void setName(String name) {
		this.name = name;
	}
//... ... 节省版面
}



代码如下:


工具类:

LogHelper.java

import java.lang.reflect.Method;

public class Trace {


	public static void Reflect_Object(Object o, String classPath) {
		if (null == o || null == classPath) return;
		try {
			Class<?> userClass = Class.forName(classPath);// 加载类
			Method[] methods = userClass.getDeclaredMethods();// 获得类的方法集合
			// 遍历方法集合
			System.out.println("=== start traversing getXX methods====");
			for (int i = 0; i < methods.length; i++) {
				// 获取所有getXX()的返回值
				// methods[i].getName()方法返回方法名
				if (methods[i].getName().startsWith("get")) {
					Object object = methods[i].invoke(o);
					System.out.println(" " + methods[i].getName() + "() : " + object);
				}
			}
			System.out.println("=== end ====");
		} catch (Exception e) {
			e.printStackTrace();
		}
	}

}



使用非常方便:

Data dat = new Data();
//TODO dat 赋值,操作等。。
... ....
// 调用助手,输出信息
Trace.Reflect_Object(dat, Data.class.getName());



完毕.




分享到:
评论

相关推荐

    java反射JAVA REFLECT (java 反射)

    JAVA REFLECT (java 反射) 取得类的继承结构 - 类所在的包; |- public Package getPackage() - 类的声明方式; |-取得全类名:public String getName() |-只取类名: public String getSimpleName() - 类所继承...

    java中的反射reflect

    本文章的原代码. 博文链接:https://yidwo.iteye.com/blog/42995

    java反射(reflect)

    java反射(reflect)

    Java中的reflect 反射的基本东西,

    JAVA反射的基础,基础,但也有价值,可以看看了解, 通过反射可以是程序的扩展性增强!

    android系统java反射机制详解

    详细解析java的反射机制

    java反射调用实例代码

    该资源包含了一个利用反射执行的一些操作,包含了动态执行构造方法,动态运行私有方法,为属性初始化等等,简单易懂。

    Android代码-Kotlin-Reflect-Tools-For-JVM

    This is a tool library for Kotlin to use java reflect APIs in Kotlin simply method.It can modify or read the top level private visible property value in Kotlin way. Note: This tools only availible ...

    Java方法反射调用demo

    Java反射 调用空参方法 调用Object类型参数的方法 调用基本类型参数的方法 调用基本类型数组参数的方法 调用String数组参数的方法 调用Object数组参数的方法 调用私有方法

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

    3.2 相关知识 3.2.1 Java反射机制的概念 3.2.2 反射机制的功能 3.2.3 Java反射机制的相关API 3.2.4 使用反射机制的步骤 3.2.5 反射机制的应用场景 3.2.6 反射机制的优缺点 Java高级程序设计实战教程第三章-Java反射...

    java反射机制的原理及在Android下的简单应用

    java反射机制的原理及在Android下的简单应用

    JavaReflect

    java反射技术,DaoFactory,通过反射获取接口对象,然后使用接口中的方法。

    java reflect

    java反射的一些总结知识点,这是java中反射比较好入门的资料

    Android代码-fest-reflect

    FEST-Reflect provides an intuitive, compact and type-safe fluent API that makes Java reflection tremendously easy to use: no more casting, checked exceptions, PriviledgedActions or calls to ...

    Java反射机制.txt

    ava反射机制 概述:通俗地讲Java反射就是通过类名获得类的实例的方法。java.lang.reflect提供了实现Java反射的API。

    Java reflect 机制详解

    免费共享,很详细的介绍了反射机制的原理,适合追根究底的java学习者

    JAVA_API1.6文档(中文)

    java.lang.reflect 提供类和接口,以获得关于类和对象的反射信息。 java.math 提供用于执行任意精度整数算法 (BigInteger) 和任意精度小数算法 (BigDecimal) 的类。 java.net 为实现网络应用程序提供类。 java....

    java-reflect:反射

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

Global site tag (gtag.js) - Google Analytics