【发布时间】:2015-07-13 22:54:20
【问题描述】:
我目前正在使用 Java 语言进行编码,但我面临的情况是
class A{
static class A1{
void same1(){}
int same2(){}
}
static class A2{
void same1(){}
int same2(){}
}
}
我使用泛型将对象存储在地图中,我将描述和对象存储为 A1 和 A2
Map<String, Object> mapObject=new HashMap<String, Object>();
如果我从映射中检索类名,是否可以访问内部类中的方法。
目前,我可以通过mapObject.get(key).getClass() 获取班级名称。
对此的任何帮助将不胜感激。谢谢。
【问题讨论】:
-
mapObject.get(key).getClass().getDeclaredMethods() -
在 Java 中只有对象被大写。
class、static、void和int都应该是小写的。String、Object和(Hash)Map都是对象,所以它们是唯一应该大写的词。 -
@Shahzeb 谢谢一百万,我能够得到方法,你能帮我多一点吗。实际上我也需要传递参数。我怎样才能将它传递给方法对象?跨度>
-
@TotZam 是的,我很抱歉,我只是想举个例子,所以在文档中创建并自动更正已经完成了它的工作。 :(
-
@Vin99999:Java API 使您能够探索在编译时为自己的程序不知道的类、接口、方法和字段,称为反射 API。 docs.oracle.com/javase/tutorial/reflect 有一个很好的反射教程
标签: java generics hashmap inner-classes