摘要:本篇文章探讨了JAVA从入门到精通之java设计模式--桥接模式,希望阅读本篇文章以后大家有所收获,帮助大家对相关内容的理解更加深入。
本篇文章探讨了JAVA从入门到精通之java设计模式--桥接模式,希望阅读本篇文章以后大家有所收获,帮助大家对相关内容的理解更加深入。
桥接模式:将抽象的部分与它的实现部分分离,使它们可以独立的变化。
我们先看一个例子
操作系统类。定义了一个运行软件的抽象方法
public abstract class OperatingSystem {
//运行软件的方法
public abstract void run();
}
定义了windows和linux类,用于区分不同操作系统项下的软件。
Windows Linux
下面是windows操作系统下的游戏类和办公软件类。
WindowsGame "Windows下的游戏" WindowsOffice "Windows下的办公软件"
下面是linux操作系统下的游戏类和办公软件类。
LinuxGame "Linux下的游戏" LinuxOffice "Linux下的办公软件"
测试类。
= = = =
测试结果:
Linux下的游戏
Linux下的办公软件
Windows下的游戏
Windows下的办公软件
从上面的例子我们可以看到每一个操作系统下都有其对应的办公软件类和游戏类,这样就会出现问题,当我们需要增加软件类型时,可能所有操作系统下都需要添加这个软件,这样就得新建很多类,另一方面,当我们需要增加操作系统时,就得把所有的软件都得再添加一遍,,但是我们考虑到,游戏,办公软件其实都是软件,我们可以把它抽象出来,看下面的例子
抽象操作系统类,定义了一个软件属性。
.soft =
具体操作系统类。
Linux "linux下的"+ Windows "windows下的"+
把不同操作系统下的软件抽象出的软件接口以及实现类。
Game "游戏" Office "办公软件"
测试类
= =
这样我们就把操作系统的抽象部分(软件)从操作系统类中抽象出来,当我们需要增加操作系统,就需要添加操作系统的具体类,添加软件时,就只需要实现软件接口即可。
本文由职坐标整理发布,学习更多的相关知识,请关注职坐标IT知识库!
您输入的评论内容中包含违禁敏感词
我知道了
请输入正确的手机号码
请输入正确的验证码
您今天的短信下发次数太多了,明天再试试吧!
我们会在第一时间安排职业规划师联系您!
您也可以联系我们的职业规划师咨询:
版权所有 职坐标-一站式IT培训就业服务领导者 沪ICP备13042190号-4
上海海同信息科技有限公司 Copyright ©2015 www.zhizuobiao.com,All Rights Reserved.
沪公网安备 31011502005948号