java 获取对象的数据类型的方法

如何获取一个数据对象的数据类型?
比如,某方法的返回值非常抽象,API上显示是Object,我如何得知在具体的程序中得知返回结果的数据类型?
objcet对象有无显示自身数据类型的方法?
急用,在线等,谢谢!

使用getClass方法可以获取一个对象的类型类,然后在调用该类的方法可以获取该类的相关信息,比如父类的名字,该类的名字等等:

package test;

import java.lang.reflect.Field;
import java.lang.reflect.Method;


public class Demo2 {
String username = "sss";
public static void main(String[] args) throws IllegalArgumentException, IllegalAccessException, NoSuchFieldException, SecurityException, NoSuchMethodException {

Demo2 t = new Demo2();
if (Demo2.class == t.getClass()) {
System.out.println("equal");
}

// èŽ·å–类名
System.out.println(t.getClass().getName());
// èŽ·å–父类名
System.out.println(t.getClass().getSuperclass());
//获取类中某个属性
Field f = t.getClass().getField("username");
//获取类中某个方法
Method m = t.getClass().getDeclaredMethod("main", String[].class);


}
温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2017-10-09
有的。蛮简单的
对象.getClass();

int a=1;
a.getClass();就是java.lang.Integer.
如果
User user=...
user.getClass();就是.......User。对象的包加类型。试一下就知道了本回答被提问者采纳
第2个回答  2011-09-15
支持
第3个回答  2011-09-15
这个貌似没有
相似回答