迪米特法则(Law of Demeter)

news/2024/11/29 5:47:12/

迪米特法则(LoD, Law of Demeter),又叫最少知识原则(Least Knowledge Principle,LKP),指一个对象对其它对象应该尽可能少地理解。
迪米特法则也描述为只与最直接的朋友讲话、不要跟陌生人讲话。
迪米特法则就是让类之间尽量少地耦合。

当前对象最直接的朋友包含:

  • 当前对象本身,
  • 作为方法的参数传入的对象,
  • 当前对象的实例变量直接引用的对象,
  • 如果当前实例变量是一个集合,那么集合中的元素也是直接朋友,
  • 当前对象所创建的对象。

示例:

package com.thb;public class Example {public void method(Demo demo) {// 这个调用没有违反迪米特法则,因为demo是方法参数所引用的对象ClassB b = demo.getClassB();// 这个调用违反了迪米特法则,因为对象b是调用demo的方法创建的b.doSomething();// 这样调用没有违反迪米特法则,通过Demo来调用ClassBdemo.doSomethingUseClassB();// 这样调用没有违反迪米特法则,因为调用的是构造器ClassC c = new ClassC();// 这样调用没有违反迪米特法则,因为对象c是本对象所直接创建的局部对象c.doSomethingElse();}
}

http://www.ppmy.cn/news/1086679.html

相关文章

BootStrap框架

一、媒体查询 1. 基本语法 根据设备宽度的变化,设置差异化样式 1. 1 开发常用写法,媒体特性常用写法: max-widthmin-width media (媒体特性) {选择器 {样式} }1. 2 书写顺序 min-width(从小到大)max-width&#…

微信小程序餐饮外卖系统设计与实现

摘 要 随着现在的“互联网”的不断发展。现在传统的餐饮业也朝着网络化的方向不断的发展。现在线上线下的方式来实现餐饮的获客渠道增加,可以更好地帮助餐饮企业实现更多、更广的获客需求,实现更好的餐饮销售。截止到2021年末,我国的外卖市场…

java八股文面试[java基础]——字节码的组成

什么是字节码? 因为JVM针对各种操作系统和平台都进行了定制,无论在什么平台,都可以通过javac命令将一个.java文件编译成固定格式的字节码(.class文件)供JVM使用。之所以被称为字节码,是因为.class文件是由…

一份工作到底干多久更合适

目录 1. 定期分析你的目标和需求 2. 留在能让你快速成长的地方 3. 注重以结果为导向的发展 4. 评估成就感与价值观一致性 5. 不要从事不适合自己的工作 6. 每年进行一次职业健康检查 7. 考虑到成长、机会和沟通因素 8. 评估职业满意度和一致性 9. 拥抱组合职业优势 1…

uniapp 集成蓝牙打印功能(个人测试佳博打印机)

uniapp 集成蓝牙打印功能(个人测试京博打印机) uniapp 集成蓝牙打印功能集成佳博内置的接口 uniapp 集成蓝牙打印功能 大家好今天分析的是uniapp 集成蓝牙打印功能,个人开发是app,应该是支持H5(没试过) 集成佳博内置的接口 下载dome地址&…

pc-签字画板vue-esign的使用

使用的是vue-esign组件 npm install vue-esign 首先下载组件在main.js中引入vue-esign,并且挂载 import { createApp } from vue; import App from ./App.vue; const app createApp(App);import vueEsign from vue-esign app.use(vueEsign ) 页面使用&#xff0…

近期写的dfs,bfs题目(比较基础的)

题一&#xff1a;离开中山路 - 洛谷 这道题就是bfs模板题&#xff0c;走迷宫&#xff0c;求两个点之间的最短距离 #include <iostream> #include <queue>using namespace std;typedef pair<int, int> PII; const int N 1010; int n; char g[N][N]; int x1…

三相并网整流控制器调试步骤

文章目录 一、 三相并网整流控制器调试步骤二、调试步骤1.精确采样----提高采样的时效性,减小相位误差。1.1 软件可通过使用DMA方式来实现:精确的交流采样控制,采样的延时会导致系统锁相后出现稳定的相位差,导致出现较大的直流分量,从而在并网控制时出现很大的恒定的无功电…