迪米特法则
迪米特原则(Law of Demeter LoD)是指一个对象应该对其他对象保持最少的了解,又叫最少知 道原则(Least Knowledge Principle,LKP),尽量降低类与类之间的耦合
- 强调只和朋友交流,不和陌生人说话
- 出现在成员变量、方法的输入、输出参数中的类都可以称之为成员朋友类
- 出现在方法体内部的类不属于朋友类
public class Book { }
public class Employee {
public void checkNumberOfBooks() {
List<Book> books = new ArrayList<Book>();
for (int i = 0; i < 20; i++) {
books.add(new Book());
}
System.out.println("The number of books is " + books.size());
}
}
public class TeamLeader {
public void commandCheckBooks(Employee employee) {
employee.checkNumberOfBooks();
}
}
以上代码,Leader 只需要联系 employee 去统计课本数量得到结果,不需要与 book 建立联系