gpt4 book ai didi

java - 在不创建实例的情况下列出类的公共(public)方法

转载 作者:行者123 更新时间:2023-11-30 07:18:49 25 4
gpt4 key购买 nike

我正在使用的测试框架有一种相当奇怪的向测试套件添加测试的方式,如下所示:

public TestSuiteAll() {
super("TestSuiteAll")

this.addTest(new TestTypeOld("TEST_EXECUTION"));
this.addTest(new TestTypeOld("TEST_COMPLETION_1"));
this.addTest(new TestTypeOld("TEST_COMPLETION_2"));

this.addTest(new TestTypeNew("TEST_NEW"));
}

例如,“TEST_EXECUTION”是 TestTypeOld 类中要调用的函数的名称。

我真的不喜欢这个设计,但我还是坚持了下来。如何列出 TestTypeOld 中的所有函数以便我可以添加所有函数?

我见过一些这样的例子:

TestTypeOld testTypeOld = new TestTypeOld("");
Class testTypeOldClass = testTypeOld.getClass();
Method[] methods = testTypeOldClass.getMethods();

但这似乎真的很啰嗦。是否有另一种不需要创建 TestTypeOld 实例的方法。

最佳答案

你应该能够做到这一点:

Method[] methods = TestTypeOld.class.getMethods();

这是一个使用 java.util.List 的工作示例:

public static void main(String args[]) {
Method[] methods = List.class.getMethods();
for(Method method : methods) {
System.out.println(method.getName());
}
}

关于java - 在不创建实例的情况下列出类的公共(public)方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15107692/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com