java中 怎么通过Object对象参数,获取到在传值时的不同子类里的统一方法query
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java中 怎么通过Object对象参数,获取到在传值时的不同子类里的统一方法query相关的知识,希望对你有一定的参考价值。
使用一个方法,传入一个Object对象(因为对象可能是子类user1,也可能是子类user2,有通用方法query在父类),那么我怎么通过object对象调用query方法?
1、首先建议你不要传入到Object对象,既然你知道他们有共同的父类(假设名字叫A),那么你就应该传入到A对象。这样你就可以调用A的query方法。2、如果你一定要用Object对象,那么,你可以
if (xxx instanceof A)
A a = (A) xxx;
// TODO
在上述TODO的位置写上你要执行的操作,其实就是强制类型转换。至于这个条件不满足的时候怎么操作,则是你要考虑的问题了。A表示你的父类,xxx表示你传入的参数名。 参考技术A 传父类,既然继承了,就可以直接调用父类方法的
instensof可以判断是user1还是user2
直接子类重写父类的query方法。然后传入参数就写父类的。这样子不同子类调用query就不一样了 参考技术B 不应该这样传 应该用泛型
你的方法应该改为
public <T> ffff(Class<T> xxx)
还可以用 父类作为参数 更好 因为你的子类都有query 方法
java中object数据怎么转换成json数据
你可以通过这个(json-lib-2.3-jdk15.jar)jar里的方法转换JSONObject json = JSONObject.fromObject(Object);
如果对象数组
JSONArray json = JSONArray .fromObject(person); 参考技术A JSONObject对象的静态方法可以直接从bean转换为json
JSONObject json = JSONObject.fromObject(bean);
以上是关于java中 怎么通过Object对象参数,获取到在传值时的不同子类里的统一方法query的主要内容,如果未能解决你的问题,请参考以下文章