我有以下问题:我按名称找到了一个班级,并且希望在没有警告的情况下进行安全的转换。但是问题是,即使在检查类型之后,我也无法做我需要的事情。
Class<?> foundClass = Class.forName(APPLET_PACKAGE + appletName);
if (Applet.class.isAssignableFrom(foundClass)) {
Class<? extends Applet> appletClass = (Class<? extends Applet) foundClass;
}
未经检查,我遇到了相同的问题:
Class<? extends Applet> appletClass = (Class<? extends Applet) Class.forName(APPLET_PACKAGE + appletName);
有人遇到这个问题吗?将不胜感激。预先感谢。
答案 0 :(得分:2)
您将需要Class.asSubclass
。