当前位置:七道奇文章资讯编程技术Java编程
日期:2011-03-22 16:15:00  来源:本站整理

操作Observer情势实现组件间通信[Java编程]

赞助商链接



  本文“操作Observer情势实现组件间通信[Java编程]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:

1.问题的提出

从前做一个界面的时刻常常会碰到这样的尴尬情形:但愿保存各个独立的组件(类),但又但愿它们之间可以彼此通信.比方Windows中的Explorer,我们但愿鼠标点击左边是树型目录的一个节点,右边的文件浏览能及时列出该节点目录下的文件和子目录,近似这样一个简单的利用,假如只有一个类担当JFrame,而树型组件和浏览文件的面板作为成员,就像:

public class MainFrame extends JFrame
{
   JPanel treePanel;
   JTree tree;
   JPanel filePanel;
   ...
}

这样当然简单在二者之间传送消息,但是可扩大性较差.普通简单想到的是两种办法:在一个组件里保存另一个组件范例的成员,初始化时作为参数传入引用,比方:

class TreePanel extends JPanel
{
   JTree tree;
   ...
}
class FilePanel extends JPanel
{
   public FilePanel(JTree tree){...}
   ...
}

大概将一个组件线程化,不断地监听另一个组件的改变,然后作出呼应的反映,比方:

class TreePanel extends JPanel
{
   JTree tree;
   ...
}
class FilePanel extends JPanel implements Runnable
{
   public void run()
   {
     while (true)
     {
       //监听tree的改变 
     }
     ...
   }
   ...
}

这样确切可以到达我们的目的,但是第一种筹划明显不利于疏松耦合,第二种筹划对比占用系统资源.通过学习计划情势,我们发现可以用Observer情势来办理这个问题.


  以上是“操作Observer情势实现组件间通信[Java编程]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:

  • 操作Observer情势实现组件间通信
  • 本文地址: 与您的QQ/BBS好友分享!
    • 好的评价 如果您觉得此文章好,就请您
        0%(0)
    • 差的评价 如果您觉得此文章差,就请您
        0%(0)

    文章评论评论内容只代表网友观点,与本站立场无关!

       评论摘要(共 0 条,得分 0 分,平均 0 分) 查看完整评论
    Copyright © 2020-2022 www.xiamiku.com. All Rights Reserved .