是否有一种使用非静态内部类名称作为类型参数的方法? 类似的东西:作为类型参数的非静态内部类名称
public class Foo {
...
// non-static inner class
public class Bar {
...
}
}
和地方
public Baz<Bar> obj;
如果类酒吧一直静我可以写
public Baz<Foo.Bar> obj;
但在这种情况下,富非静态变量不能用于酒吧。问题是我需要在Bar中使用Foo的非静态成员。
在Java游戏框架,基于Web的应用程序的真实情况:
public class SignupController extends Controller {
@Inject
private UserService userService;
...
public class SignupForm {
public String validate() {
if (userService.findUserByEmail(email) != null) {
return Messages.get("error.email.is.in.use");
}
return null;
}
}
}
在教职员模板
@(signupForm: Form[controllers.SignupController.SignupForm])
...
userService必须在内部类SignupForm可以看出,不能是静态的。这就是为什么SignupForm不能是静态的原因。
不幸的是,这不会被编译。
是否有可能使用SignupForm作为类Form的类型参数?
在此先感谢。
'不幸的是这不会被编译.'你是否尝试编译它。 – YoungHobbit
好吧,我太急了,我的“泛化”的情况是不正确的。这就是为什么它“遮蔽”了真正的问题(问题的第二部分)。 – devkuzmin