今天我考虑了一下关于角色和功能的问题,觉得这个问题这样解决比较好。。
一个登陆的visitor可以由多个角色,每一个角色就是一个类,都是实现了IRole这个接口,如果判断当前的visitor是否可以删除当前的帖子,就是是否出现删除按钮。可以用
for(int i=0;i<vistorUtils.length;i++){
visitorUtils.get(i).ShowDeleteButton(Reply,visior);
}
这个visitorUtils是一个visitor的collection,collection里面的对象是一个个实现了IRole的类。
IRole可以有一种方法,ShowDeleteButton(Reply r,vistor v),这样子----
1。如果是版主,通过重写ShowDeleteButton(Reply r,vistor v),从vistor里面查到所属的版,从Reply里面查到恢复所在的版,判断一下,是否可以显示。
2。如果是本回复的作者,在ShowDeleteButton(Reply r,vistor v)里面进行相应的判断,就可以了。
我现在是这样想的。。。
一个登陆的visitor可以由多个角色,每一个角色就是一个类,都是实现了IRole这个接口,如果判断当前的visitor是否可以删除当前的帖子,就是是否出现删除按钮。可以用
for(int i=0;i<vistorUtils.length;i++){
visitorUtils.get(i).ShowDeleteButton(Reply,visior);
}
这个visitorUtils是一个visitor的collection,collection里面的对象是一个个实现了IRole的类。
IRole可以有一种方法,ShowDeleteButton(Reply r,vistor v),这样子----
1。如果是版主,通过重写ShowDeleteButton(Reply r,vistor v),从vistor里面查到所属的版,从Reply里面查到恢复所在的版,判断一下,是否可以显示。
2。如果是本回复的作者,在ShowDeleteButton(Reply r,vistor v)里面进行相应的判断,就可以了。
我现在是这样想的。。。