2012-02-16 19 views
0

我想输入java类的路径作为输入和输出,它应该给我该类中的方法列表。我要继续吗?任何人都可以指导me.pls。如何从java中的类中获取方法列表?

+1

已经有很多类似的问题,你应该先作出的检索。 – 2012-02-16 10:26:06

+1

您所描述的内容不是重构(这是为了在不改变行为的情况下提高性能/可读性来重写代码)。像eclipse这样的IDE可以显示你已经打开的类的所有属性和方法... – shutefan 2012-02-16 10:27:17

+1

请说明你已经完成了哪些工作。什么研究? – Gray 2012-02-16 22:14:30

回答

1
Class personClass = Person.class; 

//Get the methods 
Method[] methods = personClass.getDeclaredMethods(); 

//Loop through the methods and print out their names 
for (Method method : methods) 
{ 
    System.out.println(method.getName()); 
} 
+0

Thankyou.that帮助..! – avadha 2012-02-16 12:53:55

+0

如果我必须从我的系统的本地路径读取java类中的方法,该怎么办?是否有可能直接读取它,否则我将不得不在任何包中加载该文件并执行该操作? – avadha 2012-02-16 13:26:04

+0

你可以在任何课上做。它与包无关。 – 2012-02-18 06:01:44

0

可以通过编程方式使用反射API(obj.getClass().getDeclaredMethods())或使用命令行实用程序javap这是一个部分做您的JDK发行版。

1

您可以用双引号给出路径名并获取java类。从java类可以获得数组方法,并且通过迭代方法数组,您可以通过方法的.getName()方法命名方法,以及它可以转换为列表。

Class class = Class.forName("com.nextenders.facadeimplementation.facade." 
        + className); 
    Method[] mymethods = class.getMethods(); 

让我知道,如果它还是不

感谢, Punam

+0

如果我必须从我的系统的本地路径中读取java类中的方法,该怎么办? 是否可以直接读取它,或者我将不得不在任何软件包中加载该文件并执行该操作? – avadha 2012-02-16 12:07:22

+0

@avadha你可以使用System.getProperty(“user.dir”)得到路径,然后你需要转换路径分隔符,你可以在你系统中的任何地方获得类。 – Punam 2012-02-21 10:34:25