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

网站排版设计欣赏最近发生的热点新闻

网站排版设计欣赏,最近发生的热点新闻,网站与微信结合,html静态网页源代码概念: 桥接模式是一种结构型设计模式,它将抽象和实现分离,使它们可以独立地变化。通过使用桥接模式,可以将一个类的抽象部分与其具体实现部分解耦,并且可以在运行时动态地选择不同的实现。 特点: 将抽象…

概念

桥接模式是一种结构型设计模式,它将抽象和实现分离,使它们可以独立地变化。通过使用桥接模式,可以将一个类的抽象部分与其具体实现部分解耦,并且可以在运行时动态地选择不同的实现。

特点

  1. 将抽象和实现分离,使它们可以独立变化。
  2. 通过组合而不是继承来连接抽象和实现。
  3. 提高了系统的可扩展性、灵活性和可维护性。

优点

  1. 解耦了抽象和具体实现,使得二者能够独立进行扩展。
  2. 提供了更好的灵活性,在运行时能够动态地切换或替换具体实现。
  3. 对于客户端来说,隐藏了底层的细节。

缺点

  1. 增加了系统复杂度,需要额外创建多个类以及相应的关联关系。
  2. 在某些情况下可能会导致过度设计。

适用场景

  1. 当一个类存在两个或多个独立变化的维度时(例如颜色与形状),并且希望避免使用大量子类组合时。
  2. 当需要在运行时动态选择不同的具体实现时。
  3. 当希望将抽象和实现部分分离,以便独立进行扩展和修改时。

实现方式

抽象化(Abstraction)角色通过一个成员变量持有具体实施者(Concrete Implementor)角色的引用。这个成员变量充当了抽象化角色和具体实施者角色之间的桥梁。通过将抽象化角色和具体实施者角色解耦,使得它们可以独立地进行扩展和修改。

实现代码:

// 实施者接口(Implementor)
interface DrawingAPI {void drawCircle(double x, double y, double radius);
}// 具体实施者类(Concrete Implementor)实现实施者接口
class DrawingAPI1 implements DrawingAPI {@Overridepublic void drawCircle(double x, double y, double radius) {System.out.printf("Drawing Circle[ API 1 ]: (%f,%f) with radius %f\n", x, y, radius);}
}class DrawingAPI2 implements DrawingAPI {@Overridepublic void drawCircle(double x, double y, double radius) {System.out.printf("Drawing Circle[ API 2 ]: (%f,%f) with radius %f\n", x, y, radius);}
}// 抽象化类(Abstraction)
abstract class Shape {protected DrawingAPI drawingAPI;protected Shape(DrawingAPI drawingAPI) {this.drawingAPI = drawingAPI;}public abstract void draw();
}// 扩展抽象化类(Refined Abstraction)
class CircleShape extends Shape {private double x, y, radius;public CircleShape(double x, double y, double radius, DrawingAPI drawingAPI) {super(drawingAPI);this.x = x;this.y = y;this.radius = radius;}@Overridepublic void draw() {drawingAPI.drawCircle(x, y, radius);}
}public class Main {public static void main(String[] args) {Shape redCircle = new CircleShape(100.0f, 100.0f, 10.0f,new DrawingAPI1());Shape greenCircle = new CircleShape(200.0f, 200.0f, 20.0f,new DrawingAPI1());redCircle.draw();greenCircle.draw();}
}

在上述示例中,我们定义了一个接口 DrawingApi 来表示实施者的行为,并有两个具体实现类 DrawingApi1  DrawingApi2。然后,我们创建了一个抽象类 Shape,它包含一个成员变量 drawingApi 来持有具体实施者的引用,并提供了一个抽象方法 draw()。最后,我们创建了扩展抽象化的子类 CircleShape,它通过调用 drawingApi 的方法来实现具体的绘制逻辑。

在主函数中,我们创建了两个不同颜色的圆形对象,并调用它们的 draw() 方法来进行绘制。由于抽象化角色和具体实施者角色解耦,我们可以轻松地切换不同的具体实施者类来改变绘制效果。

存在问题:

  1. 桥接模式增加了额外的类和关联关系,导致系统复杂度增加。
  2. 如果只有少量的维度需要进行分离,则使用桥接模式可能会显得过于冗余。

http://www.shuangfujiaoyu.com/news/24697.html

相关文章:

  • 网站突然没有收录seo综合查询工具
  • 一个网站的优势有哪些开发一个网站的步骤流程
  • 做ppt网站有哪些投资网站建设方案
  • 做三个月网站 广告收入电子商务seo
  • 生活中的科技产品有哪些长沙专业竞价优化公司
  • 爱站网关键词长尾挖掘工具seo培训课程
  • 怎么用代码做网站自动外链网址
  • 做网站 接单2021年网络营销考试题及答案
  • 承德网站建设百度推广电话销售话术
  • 石家庄网站怎么建设信息流投放
  • 四川住房和城乡建设厅网站不能进入自动搜索关键词软件
  • 模板做图 网站有哪些温州高端网站建设
  • 南通市建设局网站马建明郴州网站建设网络推广平台
  • 怎么给网站做二维码百度快速收录3元一条
  • 优惠券网站做代理怎么样网站推广的要点
  • xml网站地图生成搜索引擎优化主要包括
  • 中山做网站联系电话站长工具大全
  • 做网站的具体内容网络营销平台名词解释
  • 胶州企业网站建设常熟seo关键词优化公司
  • wordpress第三方360seo优化
  • iapp怎么把网站做软件技术培训学校机构
  • 茶叶网站建设网页设计制作app拉新
  • 寮步仿做网站企业管理咨询
  • wordpress建站门户如何建立独立网站
  • 网站建设 dw 时间轴seo网站关键字优化
  • 嵊州市住房和建设局网站腾讯效果推广
  • 网站规划的原则是什么全球搜索引擎市场份额
  • 怎么更换网站图片如何制作网页
  • 织梦dedecms医院类网站在线预约挂号插件_utf8永久免费google搜索引擎
  • 做公司企业网站上海优化外包