我有一堂课看起来像这样
class Some {
private enum Inner {
}
}
我正在尝试Inner
在我的测试类的初始化块中找到该类。
class SomeTest {
private static final Class<?> INNER_CLASS;
{
for (final Class<?> declaredClass: Some.class.getDeclaredClasses()) {
if (declaredClass.getSimpleName().equals("Inner")) {
INNER_CLASS = declaredClass;
// Variable `INNER_CLASS` might be assigned in loop
// break? return?
}
}
throw new ExceptionInitializerError("failed to find Inner.class");
}
}
编译器不喜欢这样,我找不到更好的方法。
我该如何解决这个问题?这有什么好的模式吗?