当前位置: 首页 > news >正文

建设银行网站公告2022国内外重大新闻事件10条

建设银行网站公告,2022国内外重大新闻事件10条,天津城市网络建设,域名服务商是什么意思依赖倒转原则#xff08;Dependence Inversion Principle#xff09; 基本介绍 高层模块不应该依赖低层模块#xff0c;二者都应该依赖其抽象#xff08;接口/抽象类#xff09;抽象不应该依赖细节#xff0c;细节应该依赖抽象依赖倒转#xff08;倒置#xff09;的… 依赖倒转原则Dependence Inversion Principle 基本介绍 高层模块不应该依赖低层模块二者都应该依赖其抽象接口/抽象类抽象不应该依赖细节细节应该依赖抽象依赖倒转倒置的中心思想是面向接口编程依赖倒转原则是基于这样的设计理念相对于细节的多变性抽象的东西要稳定的多。以抽象为基础搭建的架构比以细节为基础搭建的架构要稳定的多。在Java中抽象指的是接口或抽象类细节就是具体的实现类使用接口或抽象类的目的是制定好规范而不涉及任何具体的操作把展现细节的任务交给他们的实现类去完成 /*** Created with IntelliJ IDEA.* User: Mingda* Time: 2024/2/26 11:26* File: DependecyInversion* Description: 依赖倒转原则*/ public class DependencyInversion {public static void main(String[] args) {Persion persion new Persion();persion.receive(new Email());} }class Email {public String getInfo() {return email: hello!;} }/*** 完成Persion接收消息的功能* 方式1:* 1. 简单容易实现* 2. 如果我们获取的对象是微信短信等则需新增类同时Persion类也需要添加相应的接收方法* 3. 解决思路引入一个抽象接口IReceive表示接收者这样Persion类与接口发生依赖关系。Email、微信、短信等各自实现IReceive接口符合依赖倒转原则*/ class Persion {public void receive(Email email) {System.out.println(email.getInfo());} } /*** Created with IntelliJ IDEA.* User: Mingda* Time: 2024/2/26 11:26* File: DependecyInversion* Description: 依赖倒转原则*/ public class DependencyInversion {public static void main(String[] args) {// 客户端无需改变Persion persion new Persion();persion.receive(new Email());persion.receive(new WeChat());} }// 定义一个接口 interface IReceiver {public String getInfo(); }// Email class Email implements IReceiver {public String getInfo() {return email: hello!;} }// 微信 class WeChat implements IReceiver {public String getInfo() {return wechat: hello!;} }/*** 方式2*/ class Persion {// 对接口的依赖public void receive(IReceiver receiver) {System.out.println(receiver.getInfo());} }依赖关系传递的三种关系 接口传递构造方法传递setter方式传递 /*** Created with IntelliJ IDEA.* User: Mingda* Time: 2024/2/26 15:29* File: DependencyPass* Description:*/ public class DependencyPass {public static void main(String[] args) {ChangHong tv new ChangHong();// 方式1 // OpenAndClose openAndClose new OpenAndClose(); // openAndClose.open(tv);// 方式2 // OpenAndClose openAndClose new OpenAndClose(tv); // openAndClose.open();// 方式3OpenAndClose openAndClose new OpenAndClose();openAndClose.setTv(tv);openAndClose.open();} } 方式1通过接口传递实现依赖开关的接口 //interface IOpenAndClose { // public void open(ITV tv); //} //ITV接口 //interface ITV { // public void play(); //} // //class ChangHong implements ITV { // public void play() { // System.out.println(ChangHong is playing); // } //} //实现接口 //class OpenAndClose implements IOpenAndClose { // public void open(ITV tv) { // tv.play(); // } //} 方式2通过构造方法依赖传递 //interface IOpenAndClose { // public void open(); //} // //interface ITV { // public void play(); //} // //class ChangHong implements ITV { // public void play() { // System.out.println(ChangHong is playing); // } //} // //class OpenAndClose implements IOpenAndClose { // private ITV tv; // // public OpenAndClose(ITV tv) { // this.tv tv; // } // // public void open() { // tv.play(); // } //}// 方式3通过setter方法传递 interface IOpenAndClose {public void open();public void setTv(ITV tv); }interface ITV {public void play(); }class ChangHong implements ITV {public void play() {System.out.println(ChangHong is playing);} }class OpenAndClose implements IOpenAndClose {private ITV tv;public void setTv(ITV tv) {this.tv tv;}public void open() {tv.play();} }注意事项和细节 低层模块尽量都要有抽象类或接口或者两者都有程序稳定性更好变量的声明类型尽量是抽象类或接口这样我们的变量引用和实际对象间就存在一个缓冲层利于程序扩展和优化继承时遵循里氏替换原则 github笔记
http://www.pierceye.com/news/641346/

相关文章:

  • 门户网站建设 简报电子工程信息建设网
  • 竞价网站模板网站模板小偷
  • 怎么做视频网站网站建设设计基础
  • 惠州网站建设公司曾做网站需要学习什么知识
  • 网站制作里面链接怎么做建网站要什么工做人员
  • 网站建设费用 会计分录网站用哪些系统做的好
  • 免费建立一个个人网站网站模板怎么引用
  • 网站推广软文公司wordpress里面备份功能在哪里
  • 贵州整站优化seo平台网站建设与开发英文文献
  • 江干区住房和城乡建设局网站北京网站开发的趋势在哪里
  • 无锡网站建设选千客云网络简单网站建设推荐
  • 设计网站推荐百度贴吧带搜索的下拉框网站
  • 长春站最新发布网站开发税费
  • 北京通州住房和城乡建设部网站网站开发运营服务合同
  • 建设网站的服务端口国外用python做的网站
  • 如何实现网站生成网页手机端网站建设的注意事项
  • 澄迈网站新闻建设哪个公司建设网站
  • 怎么免费做文学网站wordpress下载及使用说明
  • 大学做兼职英语作文网站中国建筑人才培训网
  • 健康养老网站建设展馆展厅设计效果图
  • 做甜品网站的需求分析wordpress手机移动主题
  • 大兴企业官方网站建设wordpress 电话登记插件
  • 织梦网站搜索怎么做爱拍怎么创建wordpress
  • 阿里云多网站建设绵阳专门做网站的公司有哪些
  • 网站推广的基本方法对于大部分网站来说都是适用的深圳华强北网站建设
  • 网校网站毕业设计的方案网站如何做外链教程视频
  • poiplayer wordpress广州企业网站seo
  • wordpress翻页数字广州网站整站优化
  • 动漫网站设计与实现wordpress禁止留言网址
  • 网站开发交流培训机构网站制作