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

跟我一起学“仓颉”设计模式-桥接模式练习题

一、练习题

1. 设计一款数据转换工具,可以将数据库中的数据转换成多种文件格式,比如:txt、xml等,同时该工具也支持多种数据库,比如:MySQL、GuessDB等。

类图

核心代码

package DesignPattern.birdge // 实现类接口 public interface Type { func getType(): Unit } // 具体实现类 public class XML <: Type { public func getType() { print("XML") } } public class TXT <: Type { public func getType() { print("TXT") } } // 抽象类 public abstract class DB { var optType: Option<Type> = Option<Type>.None public func setType(_type: Type) { this.optType = _type } public func export(): Unit } // 扩充抽象类 public class MySQL <: DB { public override func export() { match (this.optType) { case Some(_type) => print("MySQL数据库支持") _type.getType() println("类型文件导出") case None => println("导出异常") } } } public class GuessDB <: DB { public override func export() { match (this.optType) { case Some(_type) => print("GuessDB数据库支持") _type.getType() println("类型文件导出") case None => println("导出异常") } } }

测试代码

package DesignPattern import DesignPattern.birdge.* main(): Int64 { var db: DB = MySQL() db.setType(XML()) db.export() db = GuessDB() db.setType(TXT()) db.export() return 0 }

二、小结

本章为大家详细的介绍了仓颉设计模式中桥接模式练习题的内容,下一章,为大家带来组合模式的内容。最后,创作不易,如果大家觉得我的文章对学习仓颉设计模式有帮助的话,就动动小手,点个免费的赞吧!收到的赞越多,我的创作动力也会越大哦,谢谢大家🌹🌹🌹!!!

http://www.rkmt.cn/news/1490876.html

相关文章:

  • 从‘工业测量’到‘音频采集’:一颗ADS1274如何通吃?聊聊它的硬件设计‘跨界’玩法
  • 别再为VC++和LabVIEW报错头疼了!手把手搞定USB-CAN分析仪软件安装(附避坑指南)
  • MacOS系统下Charles破解实战:详细图文教程 [特殊字符]
  • LearnVIORB架构解析:从单目到双目,视觉惯性SLAM系统的终极实现
  • Win10/Win11系统下,用VS Code写LaTeX论文:MiKTeX安装、中文支持与PDF预览避坑全记录
  • MLOps实操入门:5个文件夹+3条命令构建本地可复现闭环
  • RAG、Agent、LLMwiki,一文讲透知识库5代架构演进
  • 51单片机+Proteus超声波测距保姆级教程:从驱动编写到LCD1602显示,附完整工程文件
  • 【Springboot毕设全套源码+文档】基于java的养生药膳食疗系统的设计与实现(丰富项目+远程调试+讲解+定制)
  • EgoVLA——根据第一视角的人类视频中训练的VLA模型:助力家具组装等人形灵巧操作任务的攻克(利用可穿戴手部追踪)
  • 终极指南:用antimicrox让所有游戏都支持手柄控制的完整教程
  • Horos医疗影像软件完全指南:如何在Mac上免费实现专业级医学图像分析
  • BuildingBlocks适配器模式应用指南:掌握RecyclerView与ViewPager高级用法
  • PARL框架:AI Agent的分布式事件驱动执行范式
  • 2026年商用鸳鸯火锅底料现场试料品牌实测排行:九宫格火锅底料/川味火锅底料/清汤火锅底料/清油火锅底料/番茄底料/选择指南 - 优质品牌商家
  • 你的STM32项目复位不可靠?可能是忽略了这3个电容的细节(附选型指南)
  • 排查SNMP Trap收不到?手把手教你用Wireshark和MIB Browser定位问题(附端口占用解决)
  • 珠海余生黄金回收:全国连锁黄金回收测评 - 润富黄金回收
  • 告别内存焦虑:手把手教你用STM32H7的FMC外扩SDRAM(含CubeMX配置)
  • Windows 10下PyInstaller打包闪退?别慌,可能是Tcl/Tk在捣鬼(附保姆级修复教程)
  • 如何快速获取网易云QQ音乐LRC歌词:3步搞定歌词下载与批量处理
  • 2026年高强度水泥电杆技术解析与主流供应商盘点:水泥杆、水泥电杆卡盘、水泥电杆底盘、水泥电线杆三盘、水泥电线杆卡盘选择指南 - 优质品牌商家
  • 2026低压水泥电线杆靠谱供应商:水泥电线杆底盘、水泥电线杆拉盘、水泥电线杆配件、电力工程水泥电线杆、线路改造水泥电线杆选择指南 - 优质品牌商家
  • CouchApp部署实战:从本地开发到生产环境的完整部署策略
  • 从“接话“到“行动“:揭秘 Agent = LLM + Harness 的爆能奥秘!
  • 免费离线OCR软件终极指南:3步掌握Umi-OCR高效文字识别
  • Mermaid Live Editor终极指南:免费实时图表编辑器完全解析
  • 佛山千鸿黄金回收全城上门服务评测 - 润富黄金回收
  • Rack::Cache高级技巧:如何自定义缓存键生成与查询参数忽略策略提升性能
  • 珠海黄金回收全攻略:6家实体门店横向评测,附详细地址与避坑指南 - 润富黄金回收