我正在设计一些具有用户和团队的 Java 应用程序:
public abstract class AbstractUser()
public class BasicUser extends AbstractUser()
public class AnotherUser extends AbstractUser()
现在我有包含用户的团队:
public abstract class AbstractTeam() {
protected List<AbstractUser> members;
}
public class PublicTeam extends AbstractTeam()
现在我需要管理团队,所以每个用户都应该有一个团队状态,例如成员、版主、管理员、所有者等。
于是想到做一些接口:
public Interface TeamRole
public Interface Member extends TeamRole
public Interface Moderator extends TeamRole
并让 AbsractUser 类实现 TeamRole:
public abstract class AbstractUser implements TeamRole
现在我想做的是:让一个控制器来处理删除用户创建的条目:
public boolean deleteEntry(User u, Entry e, requestingUser r) {
}
如何获得干净的表示,以便我可以执行以下操作:
u.getEntries().removeIf(entry -> entry.equals(e));
在不“尝试”if 语句中的所有角色的情况下以一种干净的方式?
更新:这听起来可能不太“好”,但这只是为了描述执行操作时检查权限的问题
繁花不似锦
胡说叔叔
一只名叫tom的猫
相关分类