下面要给大家分享的是一个高内聚低耦合例子,那么编程应该如何实现高内聚低耦合呢?一起来看看下面的实例吧!

案例:

在一个学校里面,有着老师若干名,依次编号。

有学生若干名,依次编号。

现在的话,是要求要打印出学校里面所有老师和学生的ID。import java.util.ArrayList;

import java.util.List;

class Teacher

{

privateString id;

publicvoidsetId(String id)

{

this.id = id;

}

publicString getId()

{

return id;

}

}

class Student

{

private String id;

public void setId(String id)

{

this.id = id;

}

public String getId()

{

return id;

}

}

class StudentManage

{

publicList  getAllStudent()

{

List  list = newArrayList  ();

for (int i = 0; i

{

Student student = new Student();

student.setId("学生学号是" + i);

list.add(student);

}

return list;

}

public void printAllStudent()

{

List  list1 = this.getAllStudent();

for (Student s: list1)

{

System.out.println(s.getId());

}

}

}

class TeacherManage

{

publicList  getAllTeacher()

{

List  list = newArrayList  ();

for (inti = 0; i

{

Teacher teacher = new Teacher();

teacher.setId("老师编号" + i);

list.add(teacher);

}

return list;

}

publicvoidprintAllTeacher()

{

List  list2 = this.getAllTeacher();

for (Teacher t: list2)

{

System.out.println(t.getId());

}

}

}

public classClient

{

publicstaticvoidmain(String[] args)

{

TeacherManagetm = newTeacherManage();

tm.printAllTeacher();

StudentManagesm = newStudentManage();

sm.printAllStudent();

}

}

低耦合高内聚原则本来就是为了降低了类之间的耦合。

因为每一个类减少了不必要的依赖,所以,的确能够降低耦合关系。

可是凡是都是要有度的,虽然说能够避免和非直接的类通信,可是,要通信,就一定要通过一个中介来发生关系,利用这个方法能够做到结构清晰,高内聚低耦合。

一个小的高内聚低耦合例子就给大家分享到这里了,你还想了解更多的java实例吗?请继续关注奇Q工具网来进行了解吧!

推荐阅读:

c语言如何实现高内聚低耦合_如何实现高内聚低耦合?高内聚低耦合的现实例子...相关推荐

  1. python低代码_几行代码搞定ML模型,低代码机器学习Python库正式开源

    PyCaret 库支持在「低代码」环境中训练和部署有监督以及无监督的机器学习模型,提升机器学习实验的效率. 想提高机器学习实验的效率,把更多精力放在解决业务问题而不是写代码上?低代码平台或许是个不错的 ...

  2. 电热耦合_作者特稿︱电网运行环境下基于电热耦合潮流的架空线路应力预估

    导语 架空导线的力学状态(应力.弧垂)是决定其安全运行的关键因素,耐张段水平应力过小将导致耐张段内各线档弧垂增大,严重时会破坏安全净距引发短路故障:反之,应力过大则会导致导线振动频率的增加和疲劳极限的 ...

  3. 手机屏幕 高宽有哪些_手机新屏幕比18:9高宽到底好在哪里

    我们都有注意到,现在市场上的手机会发现它们普遍都变长了,大部分都已经采用了新的屏幕比18:9高宽,原来的都是16:9的宽高,这改变的理由是什么,智能手机的18:9高宽比能带来任何实际好处吗? 虽然我们 ...

  4. access调整行高和列宽_《excel表格怎么调整行高和列宽》 EXCEL 表格如何导出至WORD 格式...

    EXCEL 表格如何导出至WORD 格式 1.演示使用的软件为word文字处理软件,软件为office家学生版2016. 2.首先打开我档,并在上方栏找到插入菜单,单击后在工具栏中找到文本-对象. 3 ...

  5. c语言如何实现高内聚低耦合_怎么理解高内聚低耦合

    本文转自:http://www.cnblogs.com/hegezhou_hot/archive/2010/09/18/1830306.html 一.上章回顾 在上篇中我们讲解了几类UML2.0语言新 ...

  6. java的高内聚和低耦合_彻底弄懂高内聚与低耦合

    作者:大道方圆 cnblogs.com/xdecode/p/9393885.html 模块 模块就是从逻辑上将系统分解为更细微的部分, 分而治之, 复杂问题拆解为若干简单问题, 逐个解决. 耦合主要描 ...

  7. pmos低电平驱动_MOS管的低端驱动和高端驱动

    低端功率开关驱动电路的工作原理 低端功率开关驱动的原理非常简单,就是负载一端直接和电源正端相连,另外一端直接和开关管相连,正常情况下,没有控制信号的时候,开关管不导通,负载中没有电流流过,即负载处于断 ...

  8. 即构推出低延迟直播产品L3,功能全面全球高可用

    以短视频.直播为代表的音视频互动,正成为互联网主流的交互方式.拿直播举例,它从一种娱乐形式,逐渐融合于教育.娱乐.电商.旅游等多种生态中.未来,直播还将成为像水.电一样的基础设施. 然而,仅仅可进行音 ...

  9. 您知道Linux下C语言编程的一些注意事项吗_教育中国

    您知道Linux下C语言编程的一些注意事项吗_教育中国 云风的 BLOG: 一个 C 接口设计的问题 一个 C 接口设计的问题 C 语言在本质上,参数传递都是值传递.不像 Pascal 和 C++ 可 ...

  10. 低代码开发平台都有哪些?国内外十几大低代码开发平台——汇总分析

    本文目录 一.低代码开发简介 二.低代码开发平台优势 三.主流低代码平台列表以及介绍 四.参考资料 一.低代码开发简介 低代码开发平台是无需编码(0代码或无代码)或通过少量代码就可以快速生成应用程序的 ...

最新文章

  1. 为什么EClipse不显示错误
  2. LINUX 对引导加密
  3. java 代码 设置环境变量_Java 配置环境变量教程
  4. php-fpm 内存 facebook,【百家号】脸书百科,安装php-fpm-5.4.16-42.遇到的小问题 Web程序 - 贪吃蛇学院-专业IT技术平台...
  5. ccf json解析 java,【求助】e4a json解析 求助大佬帮忙老看下怎么取?
  6. ETL异构数据源Datax_部署前置环境_01
  7. 手把手教你安装 FastAdmin 到虚拟主机 (phpStudy)
  8. Gym 101246G Revolutionary Roads
  9. android调节屏幕亮度
  10. 牛牛以前在老师那里得到了一个正整数数对(x, y), 牛牛忘记他们具体是多少了。 但是牛牛记得老师告诉过他x和y均不大于n, 并且x除以y的余数大于等于k。 牛牛希望你能帮他计算一共有,,,
  11. ajax里面可以alert吗,Javascript和AJAX,仅在使用alert()时有效
  12. 西威变频器图纸 SIEI电路图 西威原理图avy-L 原厂图纸PDF格式 主板21页,底座驱动板7页
  13. 在黑客攻击之前软件安全检测是重点,软件安全检测机构怎么找?
  14. linux下sctp的安装、使用与编程
  15. CentOS6启用密钥登陆
  16. scp在命令行中带密码远程拷贝文件
  17. mlir toy 教程(1)
  18. 无法启动 Windows Event Log vpdn 无法启动 附带无法启动MYSQL服务”1067 进程意外终止”
  19. javafx实现钢笔效果,钢笔笔锋,基于bezier曲线
  20. Coursera | Andrew Ng (01-week-3-3.8)—激活函数的导数

热门文章

  1. 科学论文类型分类(letter,nbsp;p…
  2. Linux Kernel 6.0 CXL Core pci.c 详解
  3. Qt5.9.0下载与安装(windows版本)
  4. 嵌入式linux内核启动过程,嵌入式Linux:ARM Linux启动流程
  5. hihocoder1081
  6. openpose环境搭建(全教程)
  7. python:文档转换(只支持Windows操作系统)
  8. 单片机入门资料,按键消抖方式,按键怎么消抖
  9. Sklearn-GBDT(GradientBoostingDecisionTree)梯度提升树
  10. android新闻列表,Android中实现简单的新闻列表