五、迪米特原则

五、迪米特原则迪米特原则定义 一个对象应该对其他对象保持最少的了解 又叫最少知道原则 尽量降低类与类之间的耦合 强调只和朋友交流 不和陌生人说话朋友 出现在成员变量 方法的输入 输出参数中的类称为成员朋友类 而出现在方法体内部的类不属于朋友类 优点 降低类之间的耦合二 代码演示 假设场景 老板需要知道某个领导下面有多少员工 只需要知道某个领导即可 而不需要与员工进行接触 老板类 public

迪米特原则

定义:一个对象应该对其他对象保持最少的了解。又叫最少知道原则

*尽量降低类与类之间的耦合

*强调只和朋友交流,不和陌生人说话

朋友:出现在成员变量、方法的输入、输出参数中的类称为成员朋友类,而出现在方法体内部的类不属于朋友类。

优点:降低类之间的耦合

二、代码演示

​ 假设场景:老板需要知道某个领导下面有多少员工,只需要知道某个领导即可,而不需要与员工进行接触

//老板类 public class Boss { 
    //检查员工数量,通过其某个领导即可知道 public void commandCheckNumber(TeamLeader teamLeader){ 
    teamLeader.checkNumberOfEmp(); } } //领导类 public class TeamLeader { 
    public void checkNumberOfEmp(){ 
    List<Emp> emp = new ArrayList<Emp>(); for(int i = 0 ;i < 20;i++){ 
    emp.add(new Emp()); } System.out.println("员工的数量是:"+courseList.size()); } } //员工类 public class Emp { 
    } //测试调用 public class Test { 
    public static void main(String[] args) { 
    Boss boss = new Boss(); TeamLeader teamLeader = new TeamLeader(); boss.commandCheckNumber(teamLeader); } } 

通过测试可以看出老板不需要与员工接触,按照迪米特原则也就是说员工并不是老板的朋友,所以老板不需要知道。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/224699.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月17日 上午11:20
下一篇 2026年3月17日 上午11:21


相关推荐

  • Hive修改字段类型_hive表添加字段sql

    Hive修改字段类型_hive表添加字段sqlhive修改字段类型语句:altertable表名changecolumn原字段名新字段名字段类型;altertableuser_chainchangecolumnu_registeru_registedate;(u_register原类型为string类型)这样修改会报一个错误:FAILED:ExecutionError,returncode1fro…

    2025年9月18日
    11
  • 如何反编译dll文件

    如何反编译dll文件DLL DynamicLinkL 文件为动态链接库文件 又称 应用程序拓展 是软件文件类型 下载并解压 NETReflector 下面下载为绿色 7 3 0 18 版本 注 此为英文版 百度有汉化版下载 链接 https pan baidu com s 1eoWFe62wA uOdn3wTQ7e w 密码 gt87

    2025年11月13日
    4
  • vuex里mapState,mapGetters使用详解

    vuex里mapState,mapGetters使用详解这次给大家带来vuex里mapState,mapGetters使用详解,vuex里mapState,mapGetters使用的注意事项有哪些,下面就是实战案例,一起来看一下。一、介绍vuex里面的四大金刚:State,Mutations,Actions,Getters(上次记得关于vuex笔记http://www.jb51.net/article/138229.htm,是一个简…

    2022年5月6日
    49
  • BN层pytorch实现[通俗易懂]

    BN层pytorch实现[通俗易懂]#CreatedbyXkyat2019/11/29importtimeimporttorchimporttorchvisionimporttorch.nnasnnimportsysimporttorchvision.transformsastransformsfromtorch.utils.data.dataloaderimportDataLoad…

    2022年10月14日
    3
  • 阿里云国外服务器购买_阿里云购买服务器流程

    阿里云国外服务器购买_阿里云购买服务器流程目录前言购买实际全过程1、选择服务器基础配置2、网络和安全组3、系统配置(选填)4、分组设置(选填)5、确认订单6、付钱完,前往控制台控制台基本操作1、获取服务器公网IP2、登录服务器3、正常使用,放行端口前言阿里云官网:https://www.aliyun.com云服务器ECS购买链接:https://ecs-buy.aliyun.com/wizard#/prepay/ap-northeast-1共享型可用,最低日本服30.2/月(不含带宽)1Mbps要55.2元流量付费0.6元/

    2026年4月14日
    6
  • c++cstring头文件函数_c++源文件和头文件的作用与区别

    c++cstring头文件函数_c++源文件和头文件的作用与区别编程

    2025年9月7日
    8

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号