对象之间的通信

C++ 发消息,内存文件映射,socket等方式

对象有其特有的私有空间,又可以跟其它对象通信。
Java程序就是建立一个个对象(类),然后由对象以及它们之间的通信来组织程序。
下面考虑对象之间的通信问题。
 
1、单向通信
   对象b调用对象a,但是对象a不调用对象b,则通常有一下方法:
(1)在对象b中实例化一个类a。
   public class ClassA -->建立单向关联关系
    {...}                       // ClassA
   public class ClassB          // ClassB
   {
      // data
       ClassB classA;
      ...
    }   // End of ClassB
 
(2)类方法或类变量 ----->建立依赖关系
     public class ClassA        // ClassA
     {
        // method
       public static void method1()
        {...}
      }   // End of ClassA                   
   
   public class ClassB         // ClassB
    {
      // method
      oublic void method2
      {
       ...
       ClassA.method1();
      }
    }   // End of ClassB
 
2、双向通信
 (1)通过接口实现。
    具体就不介绍了。上一篇学习笔记有例子。
 (2)通过双向关系    

 
3、通过超类来实现
本质上其实跟接口是一样的。
 
总之,要想双方实现双向通信,其实本质上都是一种:在其中的一个类中实例化另外一个类的同时,把自己的一个引用给对方。
就这样。
今天暂时思考到这里。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值