public static Object factory(String p)
throws ClassNotFoundException,
InstantiationException,
IllegalAccessException {
Class c = Class.forName(p);
Object o = c.newInstance();
return o;
}
}
2、 动态检测对象的身份,替代instanceof
public static boolean
isKindOf(Object obj, String type)
throws ClassNotFoundException {
// get the class def for obj and type
Class c = obj.getClass();
Class tClass = Class.forName(type);
while ( c!=null ) {
if ( c==tClass ) return true;
c = c.getSuperclass();
}
return false;
}
JAVA中反射是什么JAVA中反射是动态获取信息以及动态调用对象方法的一种反射机制 。
Java反射就是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意方法和属性;并且能改变它的属性 。而这也是Java被视为动态语言的一个关键性质 。
Java反射的功能是在运行时判断任意一个对象所属的类,在运行时构造任意一个类的对象,在运行时判断任意一个类所具有的成员变量和方法,在运行时调用任意一个对象的方法,生成动态代理 。
扩展资料:
JAVA中反射实例:
1、Class superClass=clazz.getSuperclass();//获取父类 。
System.out.println("getSuperclass:"+superClass) 。
2、Class[] interfaces=clazz.getInterfaces();//获取实现接口 。
System.out.println("getInterfaces:"+interfaces.length) 。
3、Constructor[] cons=clazz.getConstructors();//构造方法 。
System.out.println("getConstructors:"+cons.length) 。
参考资料来源:百度百科: JAVA反射机制
java重复代码反射的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于java 类重复、java重复代码反射的信息别忘了在本站进行查找喔 。
- 如何获取云服务器的源代码? 云服务器源代码怎么弄
- 如何设置云服务器的源代码? 云服务器源代码怎么设置
- java查询数组中是否包含某一个值 javamongodb数组查询
- 如何修改云服务器的源代码? 云服务器源码怎么修改
- 如何寻找云服务器的源代码? 云服务器源码怎么找
- 如何配置云服务器的源代码? 云服务器源码怎么设置
- redis实战电子书 redisjava书籍
- redis哨兵keepalive 代码redis哨兵
- javaredis集群 javaredis列队
- Redis队列排队 redis队列java
