test2.java

来自「郭克华j2ee高级框架实战教学视频源代码 这个是比较值得一看的 由郭克华博士」· Java 代码 · 共 30 行

JAVA
30
字号
package fanshe;

import java.lang.reflect.Constructor;
import java.lang.reflect.Method;

public class Test2 {
	public static void main(String[] args)throws Exception {
		/*
		 * 反射为配置文件改变模块行为提供了可能
		 * */
		String className = "fanshe.Customer";
		Class c = Class.forName(className);
		//c.newInstance();//表示调用不带参数的构造函数
		//生成一个对象:用构造函数
		Constructor con1 = 
			c.getConstructor(new Class[]{Class.forName("java.lang.String"),
										Class.forName("java.lang.String")});//得到不带参数的构造函数
		//生成对象
		Object obj = 
			con1.newInstance(new Object[]{"1111","2222"});//new Object[]{"1111","2222"}表示传入参数
		//怎样调用obj里面的方法?
		Method met = c.getMethod("printInfo", new Class[]{});//得到方法
		met.invoke(obj, new Object[]{});//调用
		
		Customer cus = new Customer("1111","2222");
		cus.printInfo();
	}

}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?