`
luozhaoyu
  • 浏览: 347127 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

java反射样例

阅读更多
没时间解释,先上代码,改日再编辑
package test;

import java.lang.reflect.Method;

class Foo {
	public String fool(String[] say) {
		for (String i : say)
			System.out.println("I want to say :" + i);
		return "success";
	}
}

public class Test {

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		System.out.println("main started...");
		try {
			Class<Foo> c = Foo.class;
			System.out.println("c = " + c);
			Object invoker = c.newInstance();
			System.out.println("invoker = " + invoker.getClass());
			Method m = c.getMethod("fool", new Class[] { String[].class });
			System.out.println(m.invoke(invoker, new Object[] { new String[]{"1", "2", "3"} }));
		} catch (Exception e) {
			e.printStackTrace();
		}
	}

}



	public String getInsertSql(String tableName) {
		String insertSql = "";
		String column = "";
		String value = "";
		try {
			Class c = this.getClass();
			Method m;
			Field[] fields = c.getDeclaredFields();
			for (Field f : fields) {
				column += f.getName();
				m = c.getMethod("get"
						+ f.getName().substring(0, 1).toUpperCase()
						+ f.getName().substring(1), null);
				value += m.invoke(this, null);
			}
		} catch (IllegalAccessException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		} catch (IllegalArgumentException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		} catch (InvocationTargetException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		} catch (NoSuchMethodException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		} catch (SecurityException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}

		System.out.println(column + value);
		return insertSql;
	}
分享到:
评论

相关推荐

    JAVA反射简单例子

    Java反射是Java编程语言中的一个强大特性,它允许运行中的Java程序对自身进行检查并且可以直接操作程序的内部属性。在Spring框架中,反射扮演着核心角色,特别是在依赖注入(DI)和面向切面编程(AOP)中。下面我们...

    java 代理例子 -javaagent,premain方式实现

    静态代理是通过手动创建代理类来实现的,而动态代理则是利用Java的反射API在运行时动态创建代理类。 在Java 1.5之后,引入了`java.lang.instrument`包,提供了对Java应用程序进行字节码级别操作的能力,从而实现...

    java高手真经 光盘源码

    java高手真经 全光盘源代码 打包rar ...javareflection.zip 26.Java反射机制与动态代理 javageneric.zip 27.Java泛型编程 javaannotation.zip 28.Java注释符编程 javafeature.zip 29.Java5.0语言新特性

    Java软件开发简历版本样例

    【Java软件开发简历版本样例】是一份针对Java软件开发工程师职位的专业简历模版,适合有一定工作经验的开发者参考。这份简历突出了申请者张三在Java领域的专业技能和实际项目经验。 张三拥有3年的Java开发经验,他...

    Java高手真经(编程基础卷)光盘全部源码 免积分

    看到那些要积分的很不酸,发布免费版本。...javareflection.zip 26.Java反射机制与动态代理 javageneric.zip 27.Java泛型编程 javaannotation.zip 28.Java注释符编程 javafeature.zip 29.Java5.0语言新特性

    Java高手真经(编程基础卷)光盘全部源码

    看到很多人都分卷打包的,下载很是不方便,还浪费积分...javareflection.zip 26.Java反射机制与动态代理 javageneric.zip 27.Java泛型编程 javaannotation.zip 28.Java注释符编程 javafeature.zip 29.Java5.0语言新特性

    21天精通java源代码

    7. **反射机制**:反射是Java的一大特色,它允许在运行时检查类、接口、字段和方法的信息,甚至动态调用方法。 8. **Java标准库**:熟悉Java的API,如IO、NIO、网络、XML解析、日期时间处理等。 9. **泛型**:泛型...

    JAVA 简单实例

    `java.lang.reflect` 包提供了类、接口和构造器的反射API。 10. **设计模式**: 设计模式是解决常见问题的最佳实践,如工厂模式、单例模式、观察者模式等。这些模式在 Java01 和 Java02 中可能有所体现,有助于...

    设计模式的代码样例

    单例模式是将将构造方法限定为private避免了类在外部被实例化,在同一个虚拟机范围内,Singleton的唯一实例只能通过提供的入口获得[例如getInstance()方法], 事实上,通过Java反射机制是能够实例化构造方法为private...

    jreflect:Java 基础反射操作工具包

    反射Java基础反射操作工具包下载依赖&lt; repositories&gt; &lt; repository&gt; &lt; id&gt;github-maven-repo&lt;/ id&gt; &lt; url&gt;... public class User { pr

    java动态特性eval

    Java反射API允许我们在运行时检查类、接口、字段和方法的信息,甚至能够在运行时调用私有方法或访问私有字段。在模拟`eval()`功能时,我们可能需要使用`Class.forName()`加载类,`Method.invoke()`执行方法,或者`...

    Java认证考试题目(59题)

    8. **反射API**:通过反射可以在运行时获取类的信息,创建对象,调用方法,修改属性值,这是Java动态性的重要体现。 9. **Lambda表达式**:Java 8引入的新特性,简化了函数式编程,可以更简洁地编写匿名函数和处理...

    基于Java的NetCDF文件解析

    基于Java语言的NetCDF文件解析,使用了netcdf4和opencsv两个库,最终将解析后的数据导出为CSV,附依赖文件、源代码及一个测试数据样例。 可结合本人的博客...

    demo.rar_DEMO

    10. **反射和注解**:反射允许在运行时检查类的信息,注解提供元数据,样例程序会展示它们如何用于动态绑定和自定义元编程。 11. **Lambda表达式和Stream API**:Java 8引入的新特性,样例程序会演示如何简化函数式...

    java面试题 - JAVA代码与编程(1)

    Java是世界上最流行的编程语言之一,尤其在企业级应用开发领域占据主导地位。...通过阅读“2java私塾面试题----JAVA代码与编程1.pdf”这份资料,你可以进一步了解具体面试问题的样例和解答思路,提升自己的面试准备。

    liqingchuan_华为java编程

    文件操作、异常处理、线程并发、网络编程、反射机制、设计模式等都是Java进阶学习的重点。在华为的项目中,这些技术常用于实现高效的数据处理、服务间的通信以及系统优化。 三、Java框架与工具 在实际开发中,...

    spring自定义注解样例

    这里的`@Retention(RetentionPolicy.RUNTIME)`确保我们的注解在运行时仍然可用,这样我们可以在程序运行期间通过反射机制来处理这些注解。 接下来,我们可以在需要的地方使用这个自定义注解。例如,在一个方法上: ...

    J2SE实例(Java桌面程序)

    10. **反射API**:在运行时动态地获取类的信息并操作类的对象,包括Class类、Constructor类、Method类的使用。 11. **JNI(Java Native Interface)**:允许Java代码和其他语言写的代码进行交互,通常用于提升性能...

Global site tag (gtag.js) - Google Analytics