面向对象设计原05-最少知识原则.docVIP

  • 7
  • 0
  • 约2.59千字
  • 约 5页
  • 2017-05-10 发布于贵州
  • 举报
面向对象设计原05-最少知识原则

迪米特法则,又叫最少知识原则,就是说,一个对象应当对其他对象有尽可能少的了解。 ξ 11.1 迪米特法则的各种表述 只与你直接的朋友们通信; 不要跟“陌生人”说话; 每一个软件单位对其他的单位都只有最少的知识,而且局限于那些与本单位密切相关的软件单位。 ξ 11.2 狭义的迪米特法则 如果两个类不必彼此直接通信,那么这两个类就不应当发生直接的相互作用。如果其中的一个类需要调用另外一个类的某一个方法,可以通过第三者转发这个调用。 参考下例,Someone、Friend和Stranger三个类。 Someone类有一个方法接受一个Friend类型的变量: public?class?Someone ...{ ????public?void?operation1(?Friend?friend?) ????...{ ????????Stranger?stranger?=?friend.provide()?; ????????stranger.operation3()?; ????} } 所以Someone和Friend是朋友类(直接通讯的类)。 同理,Friend类持有一个Stranger类的私有对象,他们是朋友类: public?class?Friend ...{ ????private?Stranger?stranger?=?new?Stranger()?; ????pu

文档评论(0)

1亿VIP精品文档

相关文档