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

怎么看别的网站是那个公司做的网站推广招商

怎么看别的网站是那个公司做的,网站推广招商,吉林大学建设工程学院官方网站,网站建设做的好处目录 1、 基本介绍 2、 应用实例 3、 依赖关系传递的三种方式 (1) 接口传递 (2) 构造方法传递 (3) setter方式传递 4、 注意事项和细节 1、 基本介绍 依赖倒转原则(Dependence Inversion Principle)是指#xff1a; 高层模块不应该依赖低层模块#xff0c;二者都应该依…目录 1、 基本介绍 2、 应用实例 3、 依赖关系传递的三种方式 (1) 接口传递 (2) 构造方法传递 (3) setter方式传递 4、 注意事项和细节 1、 基本介绍 依赖倒转原则(Dependence Inversion Principle)是指 高层模块不应该依赖低层模块二者都应该依赖其抽象(抽象类/接口)不要去依赖一个具体的子类 抽象不应该依赖细节细节应该依赖抽象这样稳定性会比较好 依赖倒转(倒置)的中心思想是面向接口编程 依赖倒转原则是基于这样的设计理念相对于细节的多变性抽象的东西要稳定的多。以抽象为基础搭建的架构比以细节为基础的架构要稳定的多。在 java 中抽象指的是接口或抽象类细节就是具体的实现类 使用接口或抽象类的目的是制定好规范而不涉及任何具体的操作把展现细节的任务交给他们的实现类去完成接口和抽象类的价值在于设计 2、 应用实例 编程完成Person接收消息的功能。 (1) 传统方式 package com.principle.inversion; public class DependecyInversion1 {public static void main(String[] args) {Person person new Person();person.receive(new Email());} }class Email{public String getInfo() {return 电子邮件信息hello world;} } //方式一分析 //1.优点简单容易想到容易实现 //2.缺点如果我们获取的对象是 微信、短信等等则需要新增类同时Person也需要增加相应的接收方法扩展性不好 //3.解决思路引入一个抽象的接口IReceiver表示接收者这样Person类与接口IReceiver发生依赖 // 因为EmailWeiXin等等都属于接收的范畴它们各自实现IReceiver接口就可以了这样就符合了依赖倒转原则class Person{public void receive(Email email) {System.out.println(email.getInfo());} } (2) 改进方式 package com.principle.inversion; public class DependecyInversion1Improve {public static void main(String[] args) {//客户端无需改变Person person new Person();person.receive(new Email());person.receive(new WeChat());} }interface IReceiver{public String getInfo(); }class Email implements IReceiver{public String getInfo() {return 电子邮件信息hello world;} }class WeChat implements IReceiver{public String getInfo() {return 微信消息hello;} }class Person{public void receive(IReceiver receiver) {System.out.println(receiver.getInfo());} } 3、 依赖关系传递的三种方式 (1) 接口传递 public class DependencyPass {public static void main(String[] args) {ChangHong changHong new ChangHong();OpenAndClose openAndClose new OpenAndClose();openAndClose.open(changHong);} }// 方式 1 通过接口传递实现依赖 // 开关的接口 interface IOpenAndClose {public void open(ITV tv); // 抽象方法,接收接口 }interface ITV { // ITV 接口public void play(); }class ChangHong implements ITV {Overridepublic void play() {System.out.println(长虹电视机打开);} } // 实现接口 class OpenAndClose implements IOpenAndClose {public void open(ITV tv) {tv.play();} } (2) 构造方法传递 public class DependencyPass {public static void main(String[] args) {ChangHong changHong new ChangHong();//通过构造器进行依赖传递OpenAndClose openAndClose new OpenAndClose(changHong);openAndClose.open();} } // 方式 2: 通过构造方法依赖传递 interface IOpenAndClose {public void open(); // 抽象方法 }interface ITV { // ITV 接口public void play(); }class OpenAndClose implements IOpenAndClose {public ITV tv; // 成员public OpenAndClose(ITV tv) { // 通过构造器将接口传入this.tv tv;}public void open() { this.tv.play(); } }class ChangHong implements ITV {Overridepublic void play() {System.out.println(长虹电视机打开);} } (3) setter方式传递 public class DependencyPass {public static void main(String[] args) {ChangHong changHong new ChangHong();//通过 setter 方法进行依赖传递OpenAndClose openAndClose new OpenAndClose();openAndClose.setTv(changHong);openAndClose.open();//没有setTv()直接open()就会报空指针异常} } // 方式 3 ,  通过 setter 方法传递 interface IOpenAndClose {public void open(); // 抽象方法public void setTv(ITV tv); }interface ITV { // ITV 接口public void play(); }class OpenAndClose implements IOpenAndClose {private ITV tv;public void setTv(ITV tv) { this.tv tv; }public void open() { this.tv.play(); } }class ChangHong implements ITV {Overridepublic void play() {System.out.println(长虹电视机打开);} } 4、 注意事项和细节 1低层模块尽量都要有抽象类或接口或者两者都有程序稳定性更好. 2变量的声明类型尽量是抽象类或接口, 这样我们的变量引用和实际对象间就存在一个缓冲层利于程序扩展和优化 比如class A extends B{}其中B是一个抽象类/接口在使用时B obj new A()如果A类要进行扩展只需要在B中增加一个方法即可。 3继承时遵循里氏替换原则
http://www.pierceye.com/news/783160/

相关文章:

  • 小程序开发公司网站源码下载阿里云搭建公司网站
  • 网站营销方案设计公司凡科可以做视频网站吗
  • 网站seo优化费用wordpress 做商城
  • 宁波网站设计哪家公司好电子商务电商网站设计
  • 网站添加提醒租网站需要多少钱
  • 网站关键字优化地点如何用手机做网站吗
  • 中国建设银行网站签名通下载站长工具seo词语排名
  • 七牛云官网登录郑州优化网站收费标准
  • 三亚专业网站建设电商网站开发思路
  • app手机端电子商务网站功能提供网站建设课程
  • 福田皇岗社区做网站公司办公室布局效果图
  • 音乐播放网站怎么做北京终端区优化
  • 广州市建设工程交易中心网站上海畔游网络科技有限公司
  • wordpress网站好慢页面模板怎么用
  • 网站建设维护是啥意思wordpress 路径
  • 汕头网站建设报价个体工商户注册公司流程和费用
  • 网站开发学的啥36kr源码WordPress
  • 最好的免费网站空间沈阳营销型网站
  • 如何制作一个好网站网络设计报告范例
  • 邯郸做网站最好的公司彩票网站制作
  • 酒店团购的网站建设网站建设的一些原理
  • 做淘宝网站需要什么网站设置快捷键
  • 网站建设合同验收提供网站建设报
  • 湛江市建设规划局网站如何干电商
  • 东莞网站制作很好 乐云践新佛山网站建设解决方案
  • 哪个网站百度收录快海报模板网址
  • 绍兴高兴区建设网站怎么查网站制作空间有效期
  • 有没人做阿里巴巴网站维护的企业网站搭建 网络活动策划
  • 在线手机网站预览网站建设费归入长期待摊费用
  • 怎么制作个人网站企业起名