桥接模式java代码 js桥接模式

java 编程模式---桥接模式(Bridge Patter)

引例

目前累计服务客户成百上千家,积累了丰富的产品开发及服务经验。以网站设计水平和技术实力,树立企业形象,为客户提供成都网站建设、网站制作、网站策划、网页设计、网络营销、VI设计、网站改版、漏洞修补等服务。创新互联公司始终以务实、诚信为根本,不断创新和提高建站品质,通过对领先技术的掌握、对创意设计的研究、对客户形象的视觉传递、对应用系统的结合,为客户提供更好的一站式互联网解决方案,携手广大客户,共同发展进步。

就拿汽车在路上行驶来说 有小汽车 有公共汽车 它们都不但能在市区中的公路上行驶 也能在高速公路上行驶 这时你会发现 对于交通工具(汽车)有不同的类型 然而它们所行驶的环境也在变化 在软件系统中就要适应这两个方面的变化 怎么才应付这种变化呢?

概述

在软件系统中 某些类型由于自身的逻辑 它具有两个或多个维度的 那么如何应对这种 多维度的变化 ?就要利用面向对象的技术来使得类型能够沿着多个方向进行 但又不引入额外的复杂度?这就要用到Bridge模式

意图

将抽象部分与实现部分分离 使得它们都可以独立的变化 GOF

结构图

{ {

pubilc void run(){System out println( 在路上 );}

}

public class SpeedWay extends Road

{

public void run(){System out println( 高速公路 );}

}

//市区街道

public class Street extends Road

{

public void run(){System out println( 市区街道 );}

}

public class CarOnSpeedWay extends SpeedWay

{

public void run(){System out println( 小汽车在调整公路上行驶 );}

}

public class BusOnSpeedWay extends SpeedWay

{

public void run(){System out println( 公共汽车在高速公路上行驶 );}

}

public class CarOnStreet extends Street{

public void run(){System out println( 汽车在街道上行驶 );}

}

public class BusOnStreet extends Street{

public void run(){System out println( 公共汽车在街道上行驶 );}

}

传统做法通过继承来实现

结构图

lishixinzhi/Article/program/Java/gj/201311/11160

java根据以下类图,采用桥接模式编程验证面向对象的“开-闭”原则。

1.抽象:抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分地注意与当前目标有关的方面。抽象并不打算了解全部问题,而只是选择其中的一部分,暂时不用部分细节。抽象包括两个方面,一是过程抽象,二是数据抽象。2.继承:继承是一种联结类的层次模型,并且允许和鼓励类的重用,它提供了一种明确表述共性的方法。对象的一个新类可以从现有的类中派生,这个过程称为类继承。新类继承了原始类的特性,新类称为原始类的派生类(子类),而原始类称为新类的基类(父类)。派生类可以从它的基类那里继承方法和实例变量,并且类可以修改或增加新的方法使之更适合特殊的需要。3.封装:封装是把过程和数据包围起来,对数据的访问只能通过已定义的界面。面向对象计算始于这个基本概念,即现实世界可以被描绘成一系列完全自治、封装的对象,这些对象通过一个受保护的接口访问其他对象。4.多态性:多态性是指允许不同类的对象对同一消息作出响应。多态性包括参数化多态性和包含多态性。多态性语言具有灵活、抽象、行为共享、代码共享的优势,很好的解决了应用程序函数同名问题。以上这些使得JAVA代码容易理解和编写,容易维护和拓展。

Java中23种设计模式,哪些是必须了解的?

一共23种设计模式!

引用《软件秘笈-设计模式那点事》书籍:

按照目的来分,设计模式可以分为创建型模式、结构型模式和行为型模式。

创建型模式用来处理对象的创建过程;结构型模式用来处理类或者对象的组合;行为型模式用来对类或对象怎样交互和怎样分配职责进行描述。

创建型模式用来处理对象的创建过程,主要包含以下5种设计模式:

 工厂方法模式(Factory Method Pattern)

 抽象工厂模式(Abstract Factory Pattern)

 建造者模式(Builder Pattern)

 原型模式(Prototype Pattern)

 单例模式(Singleton Pattern)

结构型模式用来处理类或者对象的组合,主要包含以下7种设计模式:

 适配器模式(Adapter Pattern)

 桥接模式(Bridge Pattern)

 组合模式(Composite Pattern)

 装饰者模式(Decorator Pattern)

 外观模式(Facade Pattern)

 享元模式(Flyweight Pattern)

 代理模式(Proxy Pattern)

行为型模式用来对类或对象怎样交互和怎样分配职责进行描述,主要包含以下11种设计模式:

 责任链模式(Chain of Responsibility Pattern)

 命令模式(Command Pattern)

 解释器模式(Interpreter Pattern)

 迭代器模式(Iterator Pattern)

 中介者模式(Mediator Pattern)

 备忘录模式(Memento Pattern)

 观察者模式(Observer Pattern)

 状态模式(State Pattern)

 策略模式(Strategy Pattern)

 模板方法模式(Template Method Pattern)

 访问者模式(Visitor Pattern)

java中什么是bridge method

Java中的bridge method又叫桥接方法

桥接方法是 JDK 1.5 引入泛型后,为了使Java的泛型方法生成的字节码和 1.5 版本前的字节码相兼容,由编译器自动生成的方法。

我们可以通过Method.isBridge()方法来判断一个方法是否是桥接方法,在字节码中桥接方法会被标记为ACC_BRIDGE和ACC_SYNTHETIC,其中ACC_BRIDGE用于说明这个方法是由编译生成的桥接方法,ACC_SYNTHETIC说明这个方法是由编译器生成,并且不会在源代码中出现。


当前标题:桥接模式java代码 js桥接模式
本文网址:http://myzitong.com/article/hgsgce.html