发帖    主题    评论    推荐    标签    作者    订阅    查搜    注册   登陆   关注
 
面向对象 设计模式 领域驱动设计 企业架构 框架 开发教程 微服务 大数据 扩展性 并发编程 事件驱动 分布式 SOA
1 2 下一页 Go 2

你好,banq,请教一个问题

    
2006-01-17 09:08
赞助商链接

你好,看了你的GOF设计模式的状态模式后,我欲实现:
我的类有:
public class DbBaseOper { //DB基本操作类
   public ResutlSet query(String sql) {
...........
}
}
public class UiManager {
private DbBaseOper db;
public UiManager() {
db = new DbBaseOper();
}
public List queryUi(String sql) {
.....
if(db != null) { //1
rs = db.query(sql);
} else {
db = new DbBaseOper();
rs = db.query(sql);//2
}
}
}
我想将上面1到2的代码用状态模式替换,请问怎么写,我想了半天,没有想出来?

2006-01-23 19:34

我反复强调设计模式需要场景前提,你只给我一个if else结果,不给我场景,设计模式不是变魔术。

http://www.jdon.com/artichect/ifelse.htm

2006-01-27 16:38

你好,BANQ,这有什么场景呀,一共两个类:DbBaseOper是DB基本操作类,UiManager是管理UI用的,其中需要操作DB,而我调用DbBaseOper来作为最基本的DB的操作,我在UiManager中对DbBaseOper是否被实例化作了判断,是用IF ELSE作的的判断,我就是想把这个IF ELSE用状态模式来替换,请问怎么写?谢谢

2006-01-28 10:08

>我就是想把这个IF ELSE用状态模式来替换,请问怎么写?
状态模式是设计模式,用设计模式需要场景,这是基础知识,你没有告诉我为什么在这里用if else,所以,我也无法帮你把它转为状态模式。

给我一个这里使用if else的理由先?

2006-02-05 09:29

你好,banq,春节快乐!这里使用IF ELSE的原因是,我怕db变量可能为空,所以使用IF ELSE

2Go 1 2 下一页

赞助商链接

赞助商链接

返回顶部

移动版 关于本站 使用帮助 联系管理员 最佳分辨率1366x768
OpenSource JIVEJDON Powered by JdonFramework Code © 2002-20 jdon.com