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

长沙网站快速优化排名3d建模在线制作网站

长沙网站快速优化排名,3d建模在线制作网站,广州互邦物流网络优化建站,做房地产要自己开网站文章目录 基本介绍看下面一段代码方式 1 的优缺点改进的思路分析 基本介绍 开闭原则#xff08;Open Closed Principle#xff09;是编程中最基础、最重要的设计原则 一个软件实体如类#xff0c;模块和函数应该对扩展开放(对提供方)#xff0c;对修改关闭(对使用方)。用抽… 文章目录 基本介绍看下面一段代码方式 1 的优缺点改进的思路分析 基本介绍 开闭原则Open Closed Principle是编程中最基础、最重要的设计原则 一个软件实体如类模块和函数应该对扩展开放(对提供方)对修改关闭(对使用方)。用抽象构建框架用实现扩展细节。 当软件需要变化时尽量通过扩展软件实体的行为来实现变化而不是通过修改已有的代码来实现变化。 编程中遵循其它原则以及使用设计模式的目的就是遵循开闭原则 看下面一段代码 看一个画图形的功能。 类图设计如下 代码展示 public class Ocp {public static void main(String[] args) {//使用看看存在的问题GraphicEditor graphicEditor new GraphicEditor();graphicEditor.drawShape(new Rectangle());graphicEditor.drawShape(new Circle());//绘制三角形graphicEditor.drawShape(new Triangle());} }//这是一个绘图的类 [使用方] class GraphicEditor {// 接受Shape对象然后根据type来绘制不同的图形public void drawShape(Shape s) {if (s.m_type 1)drawRectangle(s);else if (s.m_type 2)drawCircle(s);//增加的功能else if (s.m_type 3) drawTriangle(s);}//绘制矩形public void drawRectangle(Shape r) {System.out.println(绘制矩形);}//绘制圆形public void drawCircle(Shape r) {System.out.println(绘制圆形);}//增加的功能//绘制三角形public void drawTriangle(Shape r) {System.out.println(绘制三角形);}}//Shape类基类 class Shape {int m_type; }class Rectangle extends Shape {Rectangle() {super.m_type 1;} }class Circle extends Shape {Circle() {super.m_type 2;} }//新增画三角形 class Triangle extends Shape{Triangle() {super.m_type 3;} }方式 1 的优缺点 优点是比较好理解简单易操作。缺点是违反了设计模式的 ocp 原则即对扩展开放(提供方)对修改关闭(使用方)。即当我们给类增加新功能的时候尽量不修改代码或者尽可能少修改代码.比如我们这时要新增加一个图形种类 三角形我们需要做如下修改修改的地方较多 改进的思路分析 思路把创建 Shape 类做成抽象类并提供一个抽象的 draw 方法让子类去实现即可这样我们有新的图形种类时只需要让新的图形类继承 Shape并实现 draw 方法即可使用方的代码就不需要修 - 满足了开闭原则 改进后的代码 public class Ocp {public static void main(String[] args) {GraphicEditor graphicEditor new GraphicEditor();graphicEditor.drawShape(new Rectangle());graphicEditor.drawShape(new Circle());//绘制三角形graphicEditor.drawShape(new Triangle());//其他图形graphicEditor.drawShape(new OtherGraph());} }//这是一个绘图的类 [使用方] class GraphicEditor {// 接受Shape对象调用draw方法public void drawShape(Shape s) {s.draw();} }//Shape类基类 abstract class Shape {//抽象方法public abstract void draw();}class Rectangle extends Shape {Overridepublic void draw() {// TODO Auto-generated method stubSystem.out.println(绘制矩形);} }class Circle extends Shape {Overridepublic void draw() {// TODO Auto-generated method stubSystem.out.println(绘制圆形);} }//新增画三角形 class Triangle extends Shape{Overridepublic void draw() {// TODO Auto-generated method stubSystem.out.println(绘制三角形);} }//新增一个图形 class OtherGraph extends Shape{Overridepublic void draw() {// TODO Auto-generated method stubSystem.out.println(绘制其他图形);}}
http://www.hkea.cn/news/14463630/

相关文章:

  • 网站做标签页wordpress mu 搜索
  • 网站推广公司转型方向青岛菜西有做网站的吗
  • 做网站的编程语言雄安做网站公司
  • 完全免费建站系统网站开发完成情况说明
  • 海西州住房建设局网站123logo设计
  • dw怎么做购物网站国内 设计网站的公司网站
  • 动漫网站模板下载用自己的电脑做服务器建网站
  • 关于书店网站开发实例的书安平县哪里做网站
  • 朵朵软件网站建设项目建设管理办法
  • 网站建设是什么专业里的科目网络科技公司取名字参考大全
  • 怎么防止网站被镜像wordpress主题什么意思
  • 上海自助建站上海网站建设包头企业网站制作
  • 前端开发人员怎么做网站大良品牌网站建设
  • 关键词优化公司网站上海发布官方网
  • 企业网站建设方案书范本网站后台管理界面下载
  • 悟空建站seo服务淘宝网官方网站电脑版
  • 上海做网站公司建筑网站的思想
  • 妹妹强迫我和她做网站小程序专区
  • 做下载类网站一年赚多少钱可自己绘图装修的app
  • 怎么自己的电脑做网站服务器企业网站建设费用价格
  • 室内设计网站有哪些知乎济南网站建设公司选济南网络
  • 做网站建设科技公司wordpress插件如何应用
  • 公司网站制作天强科技网站tag作用
  • 广西建设部网站百度推广 网站吸引力
  • 建一个素材网站多少钱百度seo搜索营销新视角
  • 网站建设前景展望网站开发实训周报
  • 营销型网站建设是什么意思wordpress免费用户
  • 企业邮箱注册申请免费注册126广东搜索seo哪家强
  • 建设银行网站怎么开通手机短信邮箱163注册
  • 租赁服务器的网站wordpress列表模板