迪米特法则
来源:互联网 发布:数据库设计说明书实例 编辑:程序博客网 时间:2024/05/19 12:28
其实我不懂只是看着写的好装载的,不喜勿喷
概念:
迪米特法则也称为最少知识原则。一个类应该对自己需要耦合或调用的类知道得最少,
你(被耦合或调用的类)的内部是如何复杂都和我没关系那是你的事情,我就知道你提供的public方法,我就调用这么多,其他的一概不关心。
所谓的调用的类(朋友类):
出现在成员变量、方法的输入输出参数中的类称为成员朋友类,而出现在方法体内部的类不属于朋友类。
方法是类的一个行为,类竟然不知道自己的行为与其他类产生了依赖关系,这是不允许的。
正确的做法是:
1 public class Teacher {
2
3 public void commond(GroupLeader groupLeader) {//传了一个GroupLeader类的对象作为形参,此处GroupLeader作为朋友类
4 groupLeader.countGirls();5 //调用朋友类公开的方法,这个是可以的
}
6
7 }
以下是他朋友类的复杂的内部:
01 public class GroupLeader {
02
03 private List<Girl> listGirls;//他的属性是ist<Girl>类型的对象
04
05 public GroupLeader(List<Girl> _listGirls) {//构造方法
06 this.listGirls = _listGirls;//初始化这个属性
07 }
08
09 public void countGirls() {//公开一个方法
10 System.out.println("女生数量是:" + listGirls.size());//调用了形参的方法
11 }
12
13 }
总结:
类与类之间的关系是建立在类间的,而不是方法间,因此一个方法尽量不引入一个类中不存在的对象,当然,JDK API提供的类除外。
使用注意点:
迪米特法则要求类“羞涩”一点,尽量不要对外公布太多的public方法和非静态的public变量,尽量内敛,多使用private、package-private、protected等访问权限。
如果一个方法放在本类中,既不增加类间关系,也对本类不产生负面影响,就放置在本类中。
迪米特法则的核心观念就是类间解耦,弱耦合,只有弱耦合了以后,类的复用率才可以提高。
- 迪米特法则
- 迪米特法则
- 迪米特法则
- 迪米特法则
- 迪米特法则
- 迪米特法则
- 迪米特法则
- 迪米特法则
- 迪米特法则
- 迪米特法则
- 迪米特法则
- 迪米特法则
- 迪米特法则
- 迪米特法则
- 迪米特法则
- 迪米特法则
- 迪米特法则
- 迪米特法则
- 事件类型
- 鼠标的回调方法
- angular的provider配合config使用案例
- apache2.4.9下配置配置多域名多站点
- SVM参数
- 迪米特法则
- leetcode--merge_sorted_array
- java字符串操作总结
- 高通LCD 开机logo制作
- 数据结构与算法笔记 lesson 13 队列
- 关键字static与单例模式的一点理解
- 【C++竞赛 H】The sum problem
- Javascript的面对对象的理解 【上】(prototype,函数和对象等概念)
- <HTML> ----<abbr>标签的作用