【问题标题】:Law of Demeter: Argument method clarification得墨忒耳法则:论证方法说明
【发布时间】:2018-03-20 19:46:45
【问题描述】:

因此,demeter 定律本质上旨在减少模块之间的耦合。我正在写一些例子来确保我从概念上理解这个概念。我写的代码在下面,只是想澄清一下。据我了解,首选类的集合包括:car 类的实例变量类、方法 foo 的参数类或 car 类本身。由于通过汽车类本身的方法对卡车进行操作的第三行,我的理解是这符合德米特法则。谁能给我澄清一下?

public void foo( vehicle car ) {
    vehicle truck = car;
    truck.do(truck);
}

上面的代码没有

【问题讨论】:

    标签: oop coupling


    【解决方案1】:

    是的,它确实违反了得墨忒耳法则。它通过卡车到达 car.do(),使用卡车(参数 car 的别名)作为参数。 Car 本身作为参数传递)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-06-25
      • 1970-01-01
      • 2012-08-30
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多