栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

JAVA设计模式-设计原则(二)开闭原则

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

JAVA设计模式-设计原则(二)开闭原则

提高软件系统维护性和可复用性、增加软件的可扩展性和灵活性。根据设计原则开发程序

1.概述

    对扩展开放,对修改关闭

    在程序需要进行拓展时候,不修改原有的代码,实现一个热插拔效果。为了程序的扩展性好。易于维护和升级

    想要达到这样效果,我们需要使用接口和抽象类

2.案例

   以输入法皮肤为例 

   分析:输入发皮肤分为 默认皮肤 、客户自定义两种分类,最终展示给用户

   思考:这里选择抽象类方式进行设计(如果某一些类的实现有共通之处,则可以抽象出来一个抽象类,让抽象类实现接口的公用的代码,而那些个性化的方法则由各个子类去实现)

          需要设计一个公共抽象类,抽取子类共通之处,即显示

          设计默认皮肤类、皮肤类1、皮肤类2等等

          设计输入法类,最终决定使用哪种类型的皮肤

     上代码:

公共抽象类,抽取子类共通之处:

默认皮肤类:继承抽象类,重写显示方法

 自定义一皮肤类:继承抽象类,重写显示方法

 输入法类:需要展示给用户

补充:以上代码中提到的聚合关系

          聚合关系是强关联关系,是整体与部分之间的关系

          聚合关系是通过成员对象来实现,其中成员对象是整体对象的一部分,但是成员对象可以脱衣整体对象而独立存在

 测试类:测试代码实现

 

源码:

以上源码下载地址   https://download.csdn.net/download/chengxuyuanjava123/35100631https://download.csdn.net/download/chengxuyuanjava123/35100631

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/353231.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号