访问者设计模式
来源:互联网 发布:win7桌面数字时钟软件 编辑:程序博客网 时间:2024/05/23 17:56
当数据结构固定时,要为数据结构增加新的操作方法,一般会考虑用到访问者设计模式。对某一对象增加新的方法,新的操作用accetp来接收,具体的实现在visitor中实现。双重选择:accept,visit。
看了一个例子,你就会明白:
public interface IFood {
void accept(IVisitor v);
}
public class GuangdongFoodImp implements IFood{
@Override
public void accept(IVisitor v) {
v.visit(this);
}
}
public class HubeiFoodImp implements IFood{
@Override
public void accept(IVisitor v) {
v.visit(this);
}
}
public class HubeiVisitorImp implements IVisitor{
@Override
public void visit(GuangdongFoodImp guangdong) {
System.out.println("新增加广东的做法");
}
@Override
public void visit(HubeiFoodImp hubei) {
System.out.println("新增加湖北的做法");
}
}
public interface IVisitor {
void visit(HubeiFoodImp hubei);
void visit(GuangdongFoodImp guangdong);
}
public class Clientt {
public static void main(String args[]){
HubeiVisitorImp v =new HubeiVisitorImp();
IFood food=new HubeiFoodImp();
food.accept(v);
}
}
- 设计模式 访问者模式
- 设计模式 - 访问者模式
- 设计模式:访问者模式
- 设计模式 - 访问者模式
- 设计模式 - 访问者模式
- 设计模式------------访问者模式
- 设计模式:访问者模式
- 设计模式--访问者模式
- 设计模式--访问者模式
- 设计模式-访问者模式
- 设计模式--访问者模式
- 设计模式-访问者模式
- 设计模式-访问者模式
- [设计模式]访问者模式
- 设计模式 - 访问者模式
- 设计模式-访问者模式
- 设计模式-访问者模式
- 设计模式-访问者模式
- 四条直线连接九个点
- 骨骼动画公式
- 3DSMAX 中的CS 骨骼动画插件初探
- 命令设计模式
- 解决 Mac 从睡眠恢复后没有声音的问题
- 访问者设计模式
- Linux的多任务编程-基本概念
- 骨骼动画的插值与融合
- CS中mdl文件的解析
- ext2_try_to_allocate解析
- 编写一个函数(参数用数组指针)将一个3×3矩阵转置。
- 使用函数 void fun(int **p1,int **p2),交换两个变量的值?
- 编写一个函数,删除字符串中的一段字符,函数原型为: int fun(char *p,int start,int end); 返回值为删除字符数, start 开始位置,end 结束位置。
- 【学习日记】C#数据库中主键类型的选择