类协作方式的总结

类别:Java 点击:0 评论:0 推荐:

   前些日子我遇到一个设计问题,解决问题之后,我发现以前也经常会遇到类似的问题,思考了一下, 总结出一点经验同大家分享。

  设有两个类ClassA和ClassB。ClassA内有一个成员output是类FileOutputStream的一个引用。现在ClassB需要用到ClassA中的output实例向流中放入一个字符串“ABC”应该如何实现呢?

   一共有四种方法实现上述的问题。

  1.让类ClassA调用ClassB的某个方法将OutputStream实例传递给类ClassB。这样ClassB即可把“ABC”  放入到流中了。

  2.让类ClassB调用ClassA的某个方法,来获得OutputStream实例。获得OutputStream实例后,ClassB即可将“ABC”放入到流中了。

  3.让类ClassB调用ClassA的某个方法,将字符串“ABC” 传给ClassA对象,由ClassA对象将“ABC”放入到OutputStream中。

  4.让类ClassA调用ClassB的某个方法,取得字符串“ABC”,然后由ClassA对象,将其放入到流中。

  我觉得这四种类的交互形式,贯穿面象对象设计的始终。这四种方法都有各自的优缺点。但每种都有自已应用的场合。

本文地址:http://com.8s8s.com/it/it15844.htm