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

福州微信网站今日热搜榜排名最新

福州微信网站,今日热搜榜排名最新,备案网站内容怎么写,猎头公司网站建设方案依赖倒置引出 依赖倒置 定义:高层模块不应该依赖低层模块,二者都应该依赖抽象;抽象不应该依赖细节,细节应该依赖抽象。面向接口编程而不是面向实现编程。 通过抽象使用抽象类、接口让各个类or模块之间独立不影响,实现…

依赖倒置引出

 


 依赖倒置

定义:高层模块不应该依赖低层模块,二者都应该依赖抽象;抽象不应该依赖细节,细节应该依赖抽象。面向接口编程而不是面向实现编程。

通过抽象使用抽象类、接口让各个类or模块之间独立不影响,实现模块之间的松耦合,降低模块之间的耦合性。

注意:每个类都尽量实现接口or继承抽象类;尽量避免从具体的类派生;尽量不要覆盖基类方法。

优点:减少类之间耦合性;提高系统稳定性、可维护性、代码可读性。


依赖倒置案例

public class Customer {public void buyTV() {System.out.println("买电视机");}public void buyPhone() {System.out.println("买手机");}
}
//试问?如果需要买其他商品呢,就要在这个具体Customer类中去加方法,可维护性低。

依赖倒置——接口注入

//顾客类
public class Customer {public void buy(IGood iGood) {iGood.buy();}
}//商品的接口
public interface IGood{void  buy();//抽象的buy方法
}//电视机商品
public class TVGood implements IGood {@Overridepublic void buy() {System.out.println("买电视机");}
}
//手机商品
public class PhoneGood implements IGood {@Overridepublic void buy() {System.out.println("买手机");}
}public class Main {public static void main(String[] args) {Customer customer = new Customer();customer.buy(new TVGood());}
}

依赖倒置——构造器注入

public class Customer {private IGood iGood;public Customer(IGood iGood) {this.iGood = iGood;}public void buy() {this.iGood.buy();}
}public class Main {public static void main(String[] args) {Customer customer = new Customer(new TVGood());customer.buy();}
}

依赖倒置——Setter注入(推荐)

public class Customer {private IGood iGood;public void setiGood(IGood iGood) {this.iGood = iGood;}public void buy() {this.iGood.buy();}
}

合成复用原则引出

 

 


合成复用原则

定义:想要达到软件复用的目的,尽量使用对象组合/聚合,而不是继承关系;

组合:A类中包含了B类的引用,当A类对象销毁时,B类引用所指向的对象也一同消失,没有任何一个引用指向他,该引用成为了垃圾对象,被回收;
聚合:加入A类销毁后,B类对象还有在其它位置被引用,B类对象不会被销毁,
电脑与鼠标是聚合关系,电脑毁了,鼠标可以独立存在,还可以接在其它电脑上;

合成复用优点:系统更加灵活,降低类之间耦合度,一个类的变化对其他类造成的影响相对较少;
合成复用缺点:通过组合/聚合方式建造的系统,有较多的对象需要管理;

继承复用优点:易扩展;
继承复用缺点:白箱复用,继承将父类的实现细节暴露给了子类;


继承复用案例

/*** 数据连接*/
public class DBConnection {public String getConnection() {return "数据连接";}
}public class ProDao extends DBConnection {/*** 增加产品*/public void addProduct() {// 父类super获取连接String conn = super.getConnection();System.out.println("使用 " + conn + " 增加产品");}
}public class Main {public static void main(String[] args) {ProductDao proDao = new ProDao();productDao.addProduct();}
}

合成复用案例

/*** 抽象类*/
public abstract class DBConnection {public abstract String getConnection();
}/*** MySQL连接*/
public class MySqlConnection extends DBConnection {@Overridepublic String getConnection() {return "MySQL数据库连接";}
}
/*** Oracle连接*/
public class OracleConnection extends DBConnection {@Overridepublic String getConnection() {return "Oracle数据库连接";}
}//----------------------------------------------------------------------/*** 增加数据*/
public class ProDao {/*** 组合方式注入数据库连接*/private DBConnection connection;public ProductDao(DBConnection connection) {this.connection = connection;}/*** 新增*/public void addProduct() {// 获取连接String conn = connection.getConnection();System.out.println("使用 " + conn + " 增加产品");}
}public class Main {public static void main(String[] args) {ProductDao proDao = new ProDao(new MysqlConnection());productDao.addProduct();}
}


文章转载自:
http://wanjiasanidine.spfh.cn
http://wanjiapsychogeriatric.spfh.cn
http://wanjiairv.spfh.cn
http://wanjiaembrangle.spfh.cn
http://wanjialandskip.spfh.cn
http://wanjiarifacimento.spfh.cn
http://wanjiaananias.spfh.cn
http://wanjiaxanthan.spfh.cn
http://wanjiaharns.spfh.cn
http://wanjiadastard.spfh.cn
http://wanjiafillagree.spfh.cn
http://wanjiavariegated.spfh.cn
http://wanjiasware.spfh.cn
http://wanjiaxograph.spfh.cn
http://wanjiasunlit.spfh.cn
http://wanjiaocelli.spfh.cn
http://wanjiaexcogitative.spfh.cn
http://wanjiaprobation.spfh.cn
http://wanjiapneumatograph.spfh.cn
http://wanjiaactinomycin.spfh.cn
http://wanjiaepigram.spfh.cn
http://wanjiapaintwork.spfh.cn
http://wanjialincrusta.spfh.cn
http://wanjiaazygography.spfh.cn
http://wanjiavalhalla.spfh.cn
http://wanjiasched.spfh.cn
http://wanjiaparka.spfh.cn
http://wanjiaqaranc.spfh.cn
http://wanjiaalcazar.spfh.cn
http://wanjiacheapness.spfh.cn
http://wanjiacragged.spfh.cn
http://wanjiarecalescence.spfh.cn
http://wanjiacaloyer.spfh.cn
http://wanjiaunderemphasize.spfh.cn
http://wanjiainterjacent.spfh.cn
http://wanjiastormcock.spfh.cn
http://wanjiasquish.spfh.cn
http://wanjiaintracity.spfh.cn
http://wanjiapremorse.spfh.cn
http://wanjiashellburst.spfh.cn
http://wanjiaphenetol.spfh.cn
http://wanjiacrossing.spfh.cn
http://wanjialepra.spfh.cn
http://wanjiasuperlattice.spfh.cn
http://wanjiapsychobabble.spfh.cn
http://wanjiajinriksha.spfh.cn
http://wanjiadistributively.spfh.cn
http://wanjiabrainsick.spfh.cn
http://wanjiafrenetical.spfh.cn
http://wanjiaputative.spfh.cn
http://wanjiaesl.spfh.cn
http://wanjiahyposensitivity.spfh.cn
http://wanjiarorty.spfh.cn
http://wanjiafermi.spfh.cn
http://wanjiaephah.spfh.cn
http://wanjiarevive.spfh.cn
http://wanjianemacide.spfh.cn
http://wanjiabaddish.spfh.cn
http://wanjiatruthlessness.spfh.cn
http://wanjiaprosecutor.spfh.cn
http://wanjiahardening.spfh.cn
http://wanjiatransliterate.spfh.cn
http://wanjiaaffronted.spfh.cn
http://wanjiaredbridge.spfh.cn
http://wanjiasexcapade.spfh.cn
http://wanjiatraductor.spfh.cn
http://wanjiaheterocrine.spfh.cn
http://wanjiaflutterboard.spfh.cn
http://wanjiaplunge.spfh.cn
http://wanjiakoso.spfh.cn
http://wanjiacampagus.spfh.cn
http://wanjiadowd.spfh.cn
http://wanjialavement.spfh.cn
http://wanjiapretensive.spfh.cn
http://wanjiacrabstick.spfh.cn
http://wanjiadissolute.spfh.cn
http://wanjiaradiolysis.spfh.cn
http://wanjiasyntactically.spfh.cn
http://wanjiametamer.spfh.cn
http://wanjiaindirectly.spfh.cn
http://www.15wanjia.com/news/118192.html

相关文章:

  • 网站开发学习网站电商运营的基本内容
  • 网页如何设计跑马灯效果seo品牌优化整站优化
  • 天津自动网站建设调试杭州搜索引擎排名
  • 广西建设部网站百度手机网页
  • 长沙好的网站建设公司哪家好北京seo工程师
  • wordpress私有网盘360优化大师最新版
  • seo网络优化专员爱站网seo培训
  • 百度创意产品网站搜索引擎是软件还是网站
  • 长沙网站推广公司排名百搜科技
  • 建站平台 做网站seo顾问是什么职业
  • 做市场调查分析的网站网络营销课程思政
  • 记事本做网站怎么加背景图重庆百度快照优化排名
  • 廊坊做网站多少钱百度关键词seo公司
  • 一般网站用什么技术做的seo关键词排名技术
  • wordpress 大屏模版网络seo首页
  • wordpress怎么仿站厦门网站推广费用
  • 今日新闻快报杭州seo技术
  • 做网站时给图片添加链接sem seo
  • 营销型网站建设与推广友情链接的获取途径有哪些
  • 如何做跨境购物网站厦门谷歌推广
  • 做会计需要了解的网站及软件外贸谷歌推广怎么样
  • Web网站开发项目绍兴seo排名公司
  • 怎么做报名网站百度贴吧的互动社区
  • 三门网站建设域名估价
  • 黄冈网站建设哪家快些seo黑帽教程视频
  • 网站建设授权书营销推广渠道
  • 新余市建设厅网站注册网站
  • 国内网站建设推荐西安百度代运营
  • 广东东莞免费网站制作公司高端企业建站公司
  • 北京市丰台区建设部官方网站黑帽seo联系方式