我有 36 个扩展角色的子类(超类)。
我正在编写一个方法来查看角色列表,并找到某个子类:
List<Role> roles;
Role getRole(Class subRole) {
for (Role role : roles) {
if (role instanceof subRole) return role;
}
return null;
}
此方法对于查看列表并找出是否有subClass 的任何实例并获取它很有用。
但显然我没有在方法参数中传递正确的东西。它只是说“未知类:'subRole'”
您可以使用以下isInstance
方法:
Role getRole(Class<? extends Role> subRole) {
for (Role role : roles) {
if (subRole.isInstance(role)) {
return role;
}
}
return null;
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句