当前位置: 首页 > 面试题库 >

如何在运行时获取方法的JavaDoc?

谭正谊
2023-03-14
问题内容

在运行时很容易获得方法a method Name, 但是Class在运行时 如何获得方法?

JavaDoc

如以下示例

我们的类,其中包括JavaDoc我们的目标方法

public class MyClass {
    /**
     * 
     * @param x value of ....
     * @return result of ....
     */
    public String myMethod(int x) {
        return "any value";
    }

}

具有主要方法的班级

public class TestJava {
    public static void main(String[] args) {
        // get Class method Name at run time
        String methodName = MyClass.class.getMethods()[0].getName();
        System.out.println(methodName); // will print myMethod
        // How to  get a JavaDoc of myMethod `method` at run time
        // MyClass.class.getMethods()[0].????
        // expected to print a JavaDoc of myMethod
    }
}

问题答案:

您不能:该class文件不包含注释。

一种“解决方案”是在构建程序时将Javadoc生成为HTML,并从类名和方法名构建URL。您还可以使用doclet
API
以比HTML更合适的格式生成javadoc



 类似资料:
  • 问题内容: 我们有以下课程 和这个 现在,我需要在运行时知道is是否为 。由于这是jpa自动处理的,因此我无法获取此值。 我们正在调用一个带有as参数的方法,我想避免使用它来检查它是什么类型。如果我可以做些类似的事情会更酷 问题答案: 您可以将鉴别符映射为只读属性:

  • 问题内容: 这是我的代码:ExecutorImp扩展了AbstractExecutor,它提取了与实现者相同的执行逻辑(ExecutorImp是一种情况),当调用ExecutorImp的execute()方法时,它将在其父类型中调用该方法,但在父类型中调用该方法(AbstractExcutor )应该知道与实现者绑定的另一个类(在示例中,它是User类): 所以,我的代码有什么问题? 问题答案:

  • 如何在运行Tomcat时获取包版本? 我尝试getClass().getPackage().GetImplementationVersion(),但这总是返回。我想这是因为我的war还没有打包,而Tomcat执行了.classes(又名分解的war)。存在于终战中,但不存在于文件夹中 java.lang.Package 相关的是在运行时获取Maven工件版本 更新。之前我已经添加了war构建的配置

  • 这是我第一次有机会使用Java 8中的“新”java.time包。 我需要得到总的运行时间,比如:< br> 我知道有2: - ,月和日的 ,分钟,秒,毫秒和纳秒的持续时间 有没有一种方法可以将这两者结合起来,或者比“做数学”更简单的方法? 这是到目前为止我能做的最好的事情:(用新的改进版本更新) 感谢您的宝贵时间=)

  • 对于我的JavaWeb Start应用程序,我想限制它只能从指定的域运行。如何获取运行我的应用程序的URL?我尝试了这种方式: 它工作正常,并向我显示了起源,但仅当我的jnlp文件中的代码库参数为空时。当它被设置时,然后它会显示代码库的url,这是错误的(当我在其他服务器上托管libs时),因为我想要运行我的jnlp的url。例如,我从“www.jnlpdomain.com”运行我的jnlp,但代

  • 问题内容: 我想检查代码是否正在运行,以便可以进行一些配置。 有功能吗?喜欢: runtime.IsBeingTested() 问题答案: 只需指定您在test的中运行测试即可。例如,在pkg.go中: 在pkg_test.go中: 该技术不仅可以与s 一起使用,还可以与任何数据或函数一起使用。如果您的软件包中有一些变量(在您的情况下为配置变量),则可以在中将其覆盖。