学习springmvc的第二天

利用java反射机制访问私有的方法和属性;

//获取当前线程的类加载器

ClassLoader loader = Thread.currentThread().getContextClassLoader();

//通过类加载器加载类
Class clazz = loader.loadClass("com.baotaotao.test.ClassLoaderTest");
//实例化加载的类
ClassLoaderTest test = (ClassLoaderTest) clazz.newInstance();
//通过getDeclaredField方法获取属性
Field colorfld = clazz.getDeclaredField("color");
//取消java语言访问检查以访问私有变量
colorfld.setAccessible(true);
//设置变量值
colorfld.set(test, "红色");
//获取方法
Method driveMethod = clazz.getDeclaredMethod("driver",String.class);


driveMethod.setAccessible(true);
//调用方法,可带参
driveMethod.invoke(test, "sss");

你可能感兴趣的:(java基础)