尧图网络 高端网站定制 · 原创设计
免费咨询热线
400-888-6620
免费获取方案
【2013-12-17】设计模式学习笔记:桥梁模式
[历史归档]本文原发布于 cstriker1407.info 个人博客内容为历史存档仅供参考。发布时间2013-12-17 标题设计模式学习笔记桥梁模式分类编程 / 设计模式 / java 标签设计模式·java·桥梁模式设计模式学习笔记桥梁模式最近在看《设计模式之禅》这本书收获良多作者不愧是工作多年的大牛将各种设计模式讲解的非常透彻。这里备份下书中的【 桥梁模式 】代码github【 https://github.com/cstriker1407/design_pattern 】abstraction包FactorypublicabstractclassFactory{privateProductproduct;publicFactory(Productproduct){super();this.productproduct;}publicvoidmakeMoney(){product.beProducted();product.beSelled();}}publicclassHouseFactoryextendsFactory{publicHouseFactory(Househouse){super(house);}OverridepublicvoidmakeMoney(){super.makeMoney();System.out.println(house factory make money);}}publicclassSanzaiFactoryextendsFactory{publicSanzaiFactory(Productproduct){super(product);}OverridepublicvoidmakeMoney(){super.makeMoney();System.out.println(sanzai factory make money);}}implementorpublicabstractclassProduct{publicabstractvoidbeProducted();publicabstractvoidbeSelled();}publicclassHouseextendsProduct{OverridepublicvoidbeProducted(){System.out.println(House is producted);}OverridepublicvoidbeSelled(){System.out.println(House is selled);}}publicclassIPodextendsProduct{OverridepublicvoidbeProducted(){System.out.println(IPod is producted);}OverridepublicvoidbeSelled(){System.out.println(IPod is selled);}}publicclassMp3extendsProduct{OverridepublicvoidbeProducted(){System.out.println(Mp3 is producted);}OverridepublicvoidbeSelled(){System.out.println(Mp3 is selled);}}测试代码publicclassBridgeTest{publicstaticvoidtest(){HousehousenewHouse();HouseFactoryhouseFactorynewHouseFactory(house);houseFactory.makeMoney();Mp3mp3newMp3();SanzaiFactorysanzaiFactorynewSanzaiFactory(mp3);sanzaiFactory.makeMoney();}}备注通过代码可以发现由于Factory中引用了Product通过这层桥梁关系当Product更改时Factory可以快速的更改业务。
RELATED

相关推荐

基于PIC32MZ与MCP3202的锂电池组电压平衡系统设计

基于PIC32MZ与MCP3202的锂电池组电压平衡系统设计

1. 项目背景与核心需求 在锂离子电池组应用中,串联电池单元之间的电压不平衡是导致电池性能下降甚至安全隐患的关键因素。当多个电池串联时,由于制造工艺差异、温度分布不均或老化程度不同,各单体电池的充电状态会出现偏差。这种不平衡若长期…

📅 2026/8/20 20:33:21
Vulkan-Hpp三大核心特性解析:类型安全、STL集成与RAII资源管理

Vulkan-Hpp三大核心特性解析:类型安全、STL集成与RAII资源管理

1. 项目概述:为什么我们需要 Vulkan-Hpp?如果你和我一样,从 Vulkan 的 C API 一路摸爬滚打过来,那你一定对VkResult result vkCreateInstance(&createInfo, nullptr, &instance);这类冗长、充满前缀、且需要手动管理生命…

📅 2026/8/20 20:33:22
【2013-12-17】设计模式学习笔记:装饰模式

【2013-12-17】设计模式学习笔记:装饰模式

[历史归档] 本文原发布于 cstriker1407.info 个人博客,内容为历史存档,仅供参考。 发布时间: 2013-12-17 | 标题:设计模式学习笔记:装饰模式 | 分类: 编程 / 设计模式 / java &…

📅 2026/8/29 13:33:04
MORE NEWS

更多资讯

📰

多模态融合五种策略原理与PyTorch实现

简介:本资源是一份面向高校学生与初学者的多模态情感分析课程设计项目,聚焦期末大作业场景,解决文本与图像双模态数据协同建模的情感倾向识别问题。压缩包共47个文件,含17个核心Python源码(如main.py、Trainer.py、多种…

📰

免费云服务器实测指南:三大长期免费层避坑与部署经验

免费云服务器这几个字,在开发者圈子里基本就是"又香又怕"的代名词。香的是不用掏钱就能拥有一台能跑服务的机器,怕的是注册流程麻烦、性能太弱、到期偷偷扣费。我过去大半年陆陆续续测了 Oracle Cloud、Google Cloud、AWS 以及国内几家大厂的免…

📰

ESP32开发环境本质:WSL2+ESP-IDF+clangd协同构建嵌入式操作系统

1. 这不是“装个软件”——ESP32环境搭建的本质是构建一个嵌入式开发操作系统你搜“ESP32 环境搭建”,刷出来的教程十有八九开头就是“下载 ESP-IDF 安装器,点下一步,完成”。我试过三次——第一次在 Windows 上用官方安装器,烧录…

📰

XGBoost回归实战:波士顿房价预测中的目标变换与可视化验证

简介:本资源是一份面向机器学习初学者与Python数据科学实践者的XGBoost回归预测入门代码包,聚焦波士顿房价数据集建模与可视化分析,解决回归任务中模型训练、评估与结果解释的核心问题。压缩包共5个文件(191KB)&#x…

📰

预约挂号APP开发实战:数据库表结构设计、防超卖与Android接口联调

简介:这是一套基于Android的预约挂号APP毕业设计项目,采用前后端分离架构,后端可选用SpringBoot/SSM框架,前端使用Android原生开发,数据库为MySQL 5.7,适合计算机相关专业学生用于毕业设计、课程设计或期末…

📰

卫星影像潜艇小目标检测:从旋转框标注到YOLOv8-OBB训练实战

简介:面向人工智能与计算机视觉研究者的潜艇卫星图目标检测数据集,适合需要水下目标识别训练数据的算法工程师、高校学生及军事海洋领域开发者。压缩包内含2001个文件,由1000张10241024 JPEG卫星图像、1000个XML标注文件及1个说明txt组成&…

TODAY

今日更新

THIS WEEK

本周精选

THIS MONTH

本月热门

读完文章,想聊聊您的网站?

告诉我们您的行业与需求,资深顾问一对一梳理方案与报价,全程免费。

📞 💬