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

网站首页被k怎么办谷歌浏览器下载手机版安卓

网站首页被k怎么办,谷歌浏览器下载手机版安卓,wordpress register位置,南京网站建设文章目录 一、定义:开闭原则二、模拟场景:开闭原则2.0 工程结构2.1 定义面积计算接口2.2 面积计算实现类 三、违背方案:开闭原则四、改善代码:开闭原则4.1 扩展继承4.2 单元测试 一、定义:开闭原则 开闭原则&#xff…

文章目录

  • 一、定义:开闭原则
  • 二、模拟场景:开闭原则
    • 2.0 工程结构
    • 2.1 定义面积计算接口
    • 2.2 面积计算实现类
  • 三、违背方案:开闭原则
  • 四、改善代码:开闭原则
    • 4.1 扩展继承
    • 4.2 单元测试

一、定义:开闭原则

  • 开闭原则:Open-Close Principle,OCP
    • 规定软件中的对象、类、模块和函数对扩展应该是开放的,但对于修改是封闭的。
    • 这意味着应该用抽象定义结构,用具体实现扩展细节,以此确保软件系统开发和维护过程的可靠性。
  • 开闭原则的核心思想也可以理解为 面向抽象编程

二、模拟场景:开闭原则

  • 对于外部的调用方来说,只要能体现出面向抽象编程,定义出接口并实现其方法,即不修改原有方法体,只通过继承方式进行扩展,都可以体现出开闭原则。
  • 计算三种形状的面积,如长方形、三角形、圆形。它们的类中已经按照固定的公式实现,其中圆形面积公式中 π = 3.14
    • 但后续由于 π 值取的精度对于某些场景是不足的,需要扩展。

2.0 工程结构

design-1.1-1
|——src|——main|--java|--com.lino.design|--impl|   |--CalculationArea.java|   |--CalculationAreaExt.java|--ICalculationArea.java|——test|--java|--com.lino.design.test|--ApiTest.java

2.1 定义面积计算接口

ICalculationArea.java

package com.lino.design;/*** @description: 面积计算接口*/
public interface ICalculationArea {/*** 计算面积,长方形** @param x 长* @param y 宽* @return 面积*/double rectangle(double x, double y);/*** 计算面积,三角形* 海伦公式:S=√[p(p-a)(p-b)(p-c)] 其中:p=(a+b+c)/2** @param x 边长x* @param y 边长y* @param z 边长z* @return 面积*/double triangle(double x, double y, double z);/*** 计算面积,圆形* 圆面积公式:S=πr²** @param r 半径* @return 面积*/double circular(double r);
}
  • 长方形面积,长*宽。
  • 三角形面积,使用海伦公式:S=√[p(p-a)(p-b)(p-c)],其中 p=(a+b+c)/2
  • 圆形面积,S=πr²

2.2 面积计算实现类

CalculationArea.java

package com.lino.design.impl;import com.lino.design.ICalculationArea;/*** @description: 面积计算实现*/
public class CalculationArea implements ICalculationArea {private final static double π = 3.14D;@Overridepublic double rectangle(double x, double y) {return x * y;}@Overridepublic double triangle(double x, double y, double z) {double p = (x + y + z) / 2;return Math.sqrt((p - x) * (p - y) * (p - z));}@Overridepublic double circular(double r) {return π * r * r;}
}
  • 实现类。在实现类中,分别实现三种类型的面积计算,长方形(rectangle)、三角形(triangle)、圆形(circular)。
    • 其中圆形面积的 π 值取的是 3.14D,这也是要扩展精度的方法和体现开闭原则的地方。

三、违背方案:开闭原则

  • 但这样做就会破坏整个工程服务的稳定性,也会造成一些风险。
  • 例如:用原来精度的 π 值计算出的圆形面积本可以满足需求,但是因为精度加长破坏了原有精度下的稳定性。

CalculationArea.java

package com.lino.design.impl;import com.lino.design.ICalculationArea;/*** @description: 面积计算实现*/
public class CalculationArea implements ICalculationArea {private final static double π = 3.141592653D;@Overridepublic double rectangle(double x, double y) {return x * y;}@Overridepublic double triangle(double x, double y, double z) {double p = (x + y + z) / 2;return Math.sqrt((p - x) * (p - y) * (p - z));}@Overridepublic double circular(double r) {return π * r * r;}
}

四、改善代码:开闭原则

4.1 扩展继承

  • 按照开闭原则方式实现并不复杂,它的主要目的是不能因为个例需求的变化而改变预定的实现类,除非预定的实现类有错误。
  • 实现过程是继承父类扩展需要的方法,同时可以保留原有的方法,新增自己需要的方法。

CalculationAreaExt.java

package com.lino.design.impl;/*** @description: 扩展继承,实现自己的需求*/
public class CalculationAreaExt extends CalculationArea {private final static double π = 3.141592653D;@Overridepublic double circular(double r) {return π * r * r;}
}
  • 扩展后的方法已经把求圆形面积的精度增长,需要使用此方法的用户可以直接调用。而其他方法,如长方形面积、三角形面积,则可以继续使用。

4.2 单元测试

ApiTest.java

@Test
public void test_calculationAreaExt() {ICalculationArea area = new CalculationAreaExt();double circular = area.circular(10);System.out.println(circular);
}

测试结果

314.1592653
http://www.hotlads.com/news/6432.html

相关文章:

  • 求职网站建设方案google网站推广
  • 住房与城乡建设部网站职责seo推广公司招商
  • 贵阳企业建站系统模板痘痘怎么去除有效果
  • 诸城网站制作关键词优化seo公司
  • wap网站开发流程精准引流的网络推广方法
  • 网站建设工作自查报告自媒体引流推广
  • wordpress备份数据北京网站优化经理
  • 酒泉网站建设有限公司如何在百度发广告
  • 关于网站建设的报告广告推广平台网站
  • 在黄石做政府网站关键词上首页的有效方法
  • 网站搭建培训学校佛山网站建设解决方案
  • 深圳 网站建设爱站网工具
  • 2003系统网站建设智推教育seo课程
  • 微网站建设制作设计google浏览器官方下载
  • 东至网站制作交换链接营销实现方式解读
  • 网页设计模板图片素材上海关键词优化按天计费
  • 帮黄色网站做推广今日国内新闻重大事件
  • 网站开发预算百度一下百度知道
  • 本地拖拽网站建设互联网推广怎么做
  • 网站建设电子书2022年热点营销案例
  • 建设网站的费用明细优秀网页设计作品
  • wordpress做淘宝客网站在线网站排名工具
  • 网站的积分系统怎么做的怎么找拉新推广平台
  • linux做网站服务器那个软件好百度关键词排名批量查询
  • 大学网站开发与管理课程心得体会搜索引擎营销成功的案例
  • 网站建设报价表模板百度竞价推广联系方式
  • 做网站 学php哪一部分今日国际新闻最新消息事件
  • 企业网站建设方案书 范本夫唯seo教程
  • 松江品划做企业网站怎样提高百度推广排名
  • 自己做的网站怎么实现结算功能上海网站排名优化公司