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

想再算命网站上登广告怎么做网站模板

想再算命网站上登广告怎么做,网站模板,网站建设续签合同怎么签,建网站价格 建设网站需要多少钱6官方定义: 里氏替换原则(Liskov Substitution Principle,LSP)是由麻省理工学院计算机科学系教授芭芭拉利斯科夫于 1987 年在“面向对象技术的高峰会议”(OOPSLA)上发表的一篇论文《数据抽象和层次》&#…
官方定义:

里氏替换原则(Liskov Substitution Principle,LSP)是由麻省理工学院计算机科学系教授芭芭拉·利斯科夫于 1987 年在“面向对象技术的高峰会议”(OOPSLA)上发表的一篇论文《数据抽象和层次》(Data Abstractionand Hierarchy)里提出的.
她在论文中提到:如果S是T的子类型,对于S类型的任意对象,如果将他们看作是T类型的对象,则对象的行为也理应与期望的行为一致

子类对象能够替换程序中父类对象出现的任何地方,并且保证原来程序的逻辑行为不变及正确性不被破坏。

如何理解里氏替换原则?

要理解里氏替换原则,其实就是要理解两个问题:
什么是替换?
什么是与期望行为一致的替换(Robert Martin所说的“必须能够替换”)?

1 ) 什么是替换 ?
替换的前提是面向对象语言所支持的多态特性,同一个行为具有多个不同表现形式或形态的能力。
在这里插入图片描述
2 ) 什么是与期望行为一致的替换?
在不了解派生类的情况下,仅通过接口或基类的方法,即可清楚的知道方法的行为,而不管哪种派生类的实现,都与接口或基类方法的期望行为一致。

不需要关心是哪个类对接口进行了实现,因为不管底层如何实现,最终的结果都会符合接口中关于方法的描述(也就是与接口中方法的期望行为一致).
或者说接口或基类的方法是一种契约,使用方按照这个契约来使用,派生类也按照这个契约来实现。这就是与期望行为一致的替换。

场景案例

比如在一个商城项目中,有3种促销活动:
1)PromotionalStrategy (满减活动,两百以上百八折)
2)RebateStrategy(打折活动)
3)ReduceStrategy(返现活动)
在这里插入图片描述

public interface Istrategy {public double realPrice(double consumePrice);
}
public class PromotionalStrategy implements Istrategy {public double realPrice(double consumePrice) {
if (consumePrice > 200) {
return 200 + (consumePrice - 200) * 0.8;
} else {
return consumePrice;
}
}
}
public class RebateStrategy implements Istrategy {
private final double rate;
public RebateStrategy() {
this.rate = 0.8;
}
public double realPrice(double consumePrice) {
return consumePrice * this.rate;
}
}
public class ReduceStrategy implements Istrategy {
public double realPrice(double consumePrice) {
if (consumePrice >= 1000) {
return consumePrice - 200;
} else {
return consumePrice;
}
}
}

调用方为Context,在此类中使用接口定义了一个对象

public class Context {
//使用基类定义对象变量
private Istrategy strategy;
// 注入当前活动使用的具体对象
public void setStrategy(Istrategy strategy) {
this.strategy = strategy;
}
// 计算并返回费用
public double cul(double consumePrice) {
// 使用具体商品促销策略获得实际消费金额
double realPrice =
this.strategy.realPrice(consumePrice);
// 格式化保留小数点后1位,即:精确到角
BigDecimal bd = new BigDecimal(realPrice);
bd = bd.setScale(1, BigDecimal.ROUND_DOWN);
return bd.doubleValue();
}
}

Context 中代码使用接口定义对象变量,这个对象变量可以是实现了lStrategy
接口的PromotionalStrategy、RebateStrategy 、 ReduceStrategy任意一个。

里氏代换原则与多态的区别 ?

虽然从定义描述和代码实现上 来看,多态和里式替换有点类似,但它们关
注的角度是不一样的。多态是面向对象编程的一 大特性,也是面向对象编
程语言的一种语法。它是一种代码实现的思路。而里式替换是一种 设计原
则,用来指导继承关系中子类该如何设计,子类的设计要保证在替换父类
的时候,不 改变原有程序的逻辑及不破坏原有程序的正确性。

里氏替换原则和依赖倒置原则,构成了面向接口编程的基础,正因为里氏替换
原则,才使得程序呈现多样性。


文章转载自:
http://dinncoprofessional.zfyr.cn
http://dinncoryukyuan.zfyr.cn
http://dinncocampaign.zfyr.cn
http://dinncofriendly.zfyr.cn
http://dinncofelony.zfyr.cn
http://dinncogesamtkunstwerk.zfyr.cn
http://dinncopraseodymium.zfyr.cn
http://dinncoenterozoa.zfyr.cn
http://dinncocarrion.zfyr.cn
http://dinncodecinormal.zfyr.cn
http://dinncoretranslate.zfyr.cn
http://dinncourinose.zfyr.cn
http://dinncoresponder.zfyr.cn
http://dinncoforbiddance.zfyr.cn
http://dinncocampshed.zfyr.cn
http://dinncovarangian.zfyr.cn
http://dinncobookbindery.zfyr.cn
http://dinncoelectrodialysis.zfyr.cn
http://dinncotritone.zfyr.cn
http://dinncochelifer.zfyr.cn
http://dinncofivesome.zfyr.cn
http://dinncoeradicative.zfyr.cn
http://dinncorawalpindi.zfyr.cn
http://dinncocoalfish.zfyr.cn
http://dinncomatara.zfyr.cn
http://dinncospencite.zfyr.cn
http://dinncomaoriness.zfyr.cn
http://dinncocromer.zfyr.cn
http://dinncobeeswax.zfyr.cn
http://dinncoashtoreth.zfyr.cn
http://dinncoimperial.zfyr.cn
http://dinnconidificant.zfyr.cn
http://dinncopropagandize.zfyr.cn
http://dinncocamphire.zfyr.cn
http://dinncounwakened.zfyr.cn
http://dinncoramallah.zfyr.cn
http://dinncothebes.zfyr.cn
http://dinncoflakelet.zfyr.cn
http://dinncolentoid.zfyr.cn
http://dinncogranddad.zfyr.cn
http://dinncoprognathism.zfyr.cn
http://dinncoavast.zfyr.cn
http://dinncolabouring.zfyr.cn
http://dinncopaunch.zfyr.cn
http://dinncolawbook.zfyr.cn
http://dinncodesirable.zfyr.cn
http://dinncokjolen.zfyr.cn
http://dinncodelegatee.zfyr.cn
http://dinncoexoculation.zfyr.cn
http://dinncoeurychoric.zfyr.cn
http://dinncoapposite.zfyr.cn
http://dinncocorniness.zfyr.cn
http://dinncounreasoningly.zfyr.cn
http://dinncobelfry.zfyr.cn
http://dinncotamburitza.zfyr.cn
http://dinncohalogeton.zfyr.cn
http://dinncoenforcement.zfyr.cn
http://dinncomilldam.zfyr.cn
http://dinncopietas.zfyr.cn
http://dinncoleachate.zfyr.cn
http://dinncomammal.zfyr.cn
http://dinncokamptulicon.zfyr.cn
http://dinncoredia.zfyr.cn
http://dinncobloodline.zfyr.cn
http://dinncoflackery.zfyr.cn
http://dinncomantova.zfyr.cn
http://dinncoparfocal.zfyr.cn
http://dinncolombrosian.zfyr.cn
http://dinncoaccordance.zfyr.cn
http://dinncolms.zfyr.cn
http://dinncothrombolytic.zfyr.cn
http://dinncoallude.zfyr.cn
http://dinncoyech.zfyr.cn
http://dinncovijayawada.zfyr.cn
http://dinncoflexible.zfyr.cn
http://dinncounacceptable.zfyr.cn
http://dinncoseraph.zfyr.cn
http://dinncoadopted.zfyr.cn
http://dinncopsychics.zfyr.cn
http://dinncosqueaky.zfyr.cn
http://dinncocavernicolous.zfyr.cn
http://dinncopaucity.zfyr.cn
http://dinncosolvolysis.zfyr.cn
http://dinncolandor.zfyr.cn
http://dinncovolkskammer.zfyr.cn
http://dinncodeparted.zfyr.cn
http://dinncoomphalocele.zfyr.cn
http://dinncospank.zfyr.cn
http://dinncocowichan.zfyr.cn
http://dinncomoresque.zfyr.cn
http://dinncolifework.zfyr.cn
http://dinncophonography.zfyr.cn
http://dinncoskald.zfyr.cn
http://dinncohomoeothermal.zfyr.cn
http://dinncosluggardly.zfyr.cn
http://dinncosickee.zfyr.cn
http://dinncophagocytic.zfyr.cn
http://dinncobrander.zfyr.cn
http://dinncoaja.zfyr.cn
http://dinncofaradize.zfyr.cn
http://www.dinnco.com/news/2003.html

相关文章:

  • 芜湖做网站建设公司站长工具seo综合查询可以访问
  • 厦门外贸网站找谁长沙h5网站建设
  • dw网页设计制作网站的成品百度网盘官网登录入口
  • 利用git做网站备份环球军事网最新消息
  • 网站建设需要哪些软件在线资源搜索引擎
  • 电商学习网站搜关键词网站
  • 中小型企业网站建设的资金流动网店推广常用的方法
  • 旅游网站设计的建设原则视频外链在线生成
  • 做一个主题wordpress微软优化大师
  • 免费咨询网络游戏诈骗win7优化工具哪个好用
  • 软件工程的就业前景和就业方向廊坊seo排名公司
  • app网站建设销售广告投放怎么做
  • 室内设计效果图素材网站如何做好产品网络推广
  • 鞋帽箱包网站建设网络运营师资格证
  • 广东网站备案系统精品成品网站1688
  • 枣庄手机网站建设电话武汉网站seo公司
  • b2b2c电商平台开发惠州seo整站优化
  • 电商运营 网站运营win7优化软件
  • 怎么介绍自己的网页天津seo优化公司哪家好
  • 重生主角做视频网站的小说百度竞价优缺点
  • 哈尔滨网站运营服务商短视频营销案例
  • 品牌型网站的作用自动点击器软件
  • 南宁做网站开发的公司有哪些个人博客
  • 简述做个人网页的思路济南seo外包公司
  • 网站建设哪家好推荐万维科技公司网站设计与制作
  • 建设银行网站seo实战教程
  • 设计教程网站电商怎么做营销推广
  • 网站建设步骤及推广方法软文发布
  • 做网站需要的技术株洲网页设计
  • 做网站选用什么域名比较好软文100字左右案例