线程和界面如何互相调用? Observable/Observer,也许可以试试 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 可以不可以做一个interface,把你接收到message后需要进行的操作写到interface里面,由clientimplement并且重载这些interface函数,然后直接将client界面传给message,这样在message里面就可以调用interface的函数而且能保证封装性吧 可以考虑MVC模式MVC不只能构造j2ee环境,对于j2se的构造也有很好的“分层”效果lz可以考虑设计出一个控制器message和client都通过这个层,来向对方发送命令比如,message收到一个信息,发送内容给控制器,控制器来传递给client,client显示给用户而且,根据lz的描述client里面逻辑处理和显示处理是在一起的,可以考虑分层设计,类似servlet和jsp的关系,servlet负责逻辑处理,然后把处理过的内容交给jsp完成做j2ee做多了,就老绕着j2ee说,见谅啊见谅,呵呵 你上面说的确实是这样,我的逻辑处理是放在 界面层里一起处理的。我想知道你说的“message收到一个信息,发送内容给控制器,控制器来传递给client,client显示给用户”怎么进行?因为jsp 是重新加载一个界面,或者挑转。这样的话,就不用去调用之前的。而我的界面,我想调用我的组件,如 label 改变内容,或者 jTextArea 打印文字等到。 你上面说的确实是这样,我的逻辑处理是放在 界面层里一起处理的。我想知道你说的“message收到一个信息,发送内容给控制器,控制器来传递给client,client显示给用户”怎么进行?因为jsp 是重新加载一个界面,或者挑转。这样的话,就不用去调用之前的。而我的界面,我想调用我的组件,如 label 改变内容,或者 jTextArea 打印文字等到。大概是这个样子吧class message{ controller c = controller实例}class client{ controller c = controller实例 private doSth(param){ //更新组件内容状态等状态 }}class controller{ client c = client实例 message m = message实例 private doSth(param){ c.doSth(); }}然后,message接收了一个消息,组织好param后(这步可以让controller做,也可以放在另外的util类里)调用c.doSth(param)这样,就完成了一次message传递给controller信息,controll调用client的方法处理的流程反向同理client调用(发给)controller一个方法(信息),然后controller调用m.XXX方法发送大概是这个意思吧,具体程序其实我也没写过good luck 抱歉,上面的“调用c.doSth(param)"和"这样,”之间,少写了一句:”然后在controller的doSth方法再调用controller里面的c.doSth“做处理。也就是委托给定义在controller里的client实例干实事good luck 大概明白你的意思。。那我还不如把整个 client实例当参数传给 message 呢你这样的话,虽然结构清晰点,但操作性不太可行。而且client 要调动的东西比较多。也不可能都写成方法,有些是 组件的方法之类。来回调动很麻烦的。。不过还是谢谢你了。我直接把message 类 的 线程 直接放进 client 里去好了。这样图个方便 你应该在client事先写好几个模板,然后message传过来的,就是要调用的模板的编号之类的 大概明白你的意思。。那我还不如把整个 client实例当参数传给 message 呢你这样的话,虽然结构清晰点,但操作性不太可行。而且client 要调动的东西比较多。也不可能都写成方法,有些是 组件的方法之类。来回调动很麻烦的。。不过还是谢谢你了。我直接把message 类 的 线程 直接放进 client 里去好了。这样图个方便也行,不过我建议还是把message类当作工具类封装一下,放一个实例在client去操作。这样就等于client一手托两家,一家是界面控件,一家是消息处理(其实这样等于client也就是个controller的角色了,呵呵)good luck 最简单的方法:把界面类的控件做成public static,就可以直接调用了 不显示删除回复显示所有回复显示星级回复显示得分回复 关于批量上传数据的问题 时间格式的问题,在线等! 怎么样在VBSCRIPT里建立一个源去连接以经配置好的LDAP呢 本人遇到一个难题。 Swing 的问题 英文不行又是图形编程方面初学者的问题,请大家帮一下! xmlencoder怎么用? 问一个关于tabel(SWING)的问题!! 如何利用servlet进行文件的上传!谢! Java新手的三个问题 求教:new Scanner(System.in) 编译出错 求大神帮忙。一直没搞明白怎么错了
message和client都通过这个层,来向对方发送命令比如,
message收到一个信息,发送内容给控制器,
控制器来传递给client,client显示给用户而且,根据lz的描述
client里面逻辑处理和显示处理是在一起的,
可以考虑分层设计,
类似servlet和jsp的关系,
servlet负责逻辑处理,然后把处理过的内容交给jsp完成做j2ee做多了,就老绕着j2ee说,见谅啊见谅,
呵呵
你上面说的确实是这样,我的逻辑处理是放在 界面层里一起处理的。
我想知道你说的
“message收到一个信息,发送内容给控制器,
控制器来传递给client,client显示给用户”
怎么进行?
因为jsp 是重新加载一个界面,或者挑转。这样的话,就不用去调用之前的。
而我的界面,我想调用我的组件,如 label 改变内容,或者 jTextArea 打印文字等到。
你上面说的确实是这样,我的逻辑处理是放在 界面层里一起处理的。
我想知道你说的
“message收到一个信息,发送内容给控制器,
控制器来传递给client,client显示给用户”
怎么进行?
因为jsp 是重新加载一个界面,或者挑转。这样的话,就不用去调用之前的。
而我的界面,我想调用我的组件,如 label 改变内容,或者 jTextArea 打印文字等到。大概是这个样子吧
class message{
controller c = controller实例
}class client{
controller c = controller实例 private doSth(param){
//更新组件内容状态等状态
}
}class controller{ client c = client实例
message m = message实例
private doSth(param){
c.doSth();
}
}然后,message接收了一个消息,
组织好param后(这步可以让controller做,也可以放在另外的util类里)
调用c.doSth(param)
这样,就完成了一次message传递给controller信息,controll调用client的方法处理的流程反向同理
client调用(发给)controller一个方法(信息),然后controller调用m.XXX方法发送大概是这个意思吧,
具体程序其实我也没写过good luck
少写了一句:
”然后在controller的doSth方法再调用controller里面的c.doSth“做处理。也就是委托给定义在controller里的client实例干实事good luck
大概明白你的意思。。那我还不如把整个 client实例当参数传给 message 呢
你这样的话,虽然结构清晰点,但操作性不太可行。而且client 要调动的东西比较多。
也不可能都写成方法,有些是 组件的方法之类。来回调动很麻烦的。。
不过还是谢谢你了。
我直接把message 类 的 线程 直接放进 client 里去好了。这样图个方便
大概明白你的意思。。那我还不如把整个 client实例当参数传给 message 呢
你这样的话,虽然结构清晰点,但操作性不太可行。而且client 要调动的东西比较多。
也不可能都写成方法,有些是 组件的方法之类。来回调动很麻烦的。。
不过还是谢谢你了。
我直接把message 类 的 线程 直接放进 client 里去好了。这样图个方便也行,
不过我建议还是把message类当作工具类封装一下,
放一个实例在client去操作。
这样就等于client一手托两家,一家是界面控件,一家是消息处理
(其实这样等于client也就是个controller的角色了,呵呵)good luck