位置: 编程技术 - 正文

Android设计模式--抽象工厂模式(android设计模式单例有几种)

编辑:rootadmin

推荐整理分享Android设计模式--抽象工厂模式(android设计模式单例有几种),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:android设计模式的应用场景,android设计模式与最佳实践 电子版,android设计模式与最佳实践 电子版,android设计模式面试题,android设计模式的应用场景,android设计模式的应用场景,android设计模式与最佳实践 pdf,android设计模式的应用场景,内容如对您有帮助,希望把文章链接给更多的朋友!

问题:

抽象工厂模式,是一个,狠恶心的模式,那么这个模式在Android有没有用到过呢?

1、定义:

抽象工厂模式:为创建一组相关或者是相互依赖的对象提供一个接口,而不需要指定他们的具体类。

2、使用:

2.1、不依赖于产品类实例如何被创建,组合和表达的细节;

2.2、产品有多于一个的产品族,而系统只消费其中某一族的产品;

2.3、同属于同一个产品族是在一起使用的;

2.4、提供一个产品类的库,所有产品以同样的接口出现,从而使使用者不依赖于实现;

3、与工厂方法的区别:

3.1、抽象工厂是面向一个工厂方法的升级;

3.2、抽象方法提供的是一个产品族,即多个产品等级结构,而工厂方法则是针对一个产品等级结构;

3.3、抽象方法提供的产品是衍生自多个抽象或者接口,而工厂方法则衍生自同一个抽象或者接口;

4、优点:

4.1、由于是工厂方法的升级,因此继承了工厂方法的所有优点;

Android设计模式--抽象工厂模式(android设计模式单例有几种)

4.2、可以在内部对产品族的产品进行相应的约束;

4.3、方便的切换产品族;

5、缺点:

5.1、不易拓展。新的产品族出现,抽象工厂以及相应的实现都需要修改;

6、最终的目的:

设计模式的目的最终是为了解除耦合,那么使用时,当工厂方法,添加某些方法,而形成的产品族时,便成为了抽象工厂,当抽象工厂减少某些方法变的单一时,便成为工厂方法。使用模式仅仅为了更好的维护与拓展。

7、简单的demo:

在彩票中有双色球,大乐透,等彩种,也有各种地方性的彩种,为了demo的方便,我将SSQ,DLT也划分为地方性彩种;

每个地方,都有这两个彩种,从而形成产品族。

具体工厂:

具体使用:

8、Android的说明:

由于抽象工厂不易于拓展新的产品族,所以这种设计模式,在提供对外部人员访问时,很少使用,所以在Android源码中,基本是没有这种设计模式,当然或许也是我没有找到吧,不过我想应该是没有的。

9、运用最为典范:

9.1 模式设计之初:就是为了适应在Unix与Windows两个操作系统下的视图(按钮Button,TextView等),而构建视图族,视图族中有各自不同的实现;

9.2在java 的连接数据库的操作中,对不同的数据库的操作而形成的对象操作族,就是一种很好的模式设计;但是当再次更换数据时,所需要造成的接口的修改也是十分恶心,所以这种模式拓展性不好!

当然,既然模式设计出来就有其优点与可用性,只是暂时在Android源码中没有发现,或许可以在自己的代码中实现,同时也期待和等待出现的惊喜!

[置顶] 快速掌握Android三个常用自定义控件Toast AlertDialog Notification 今天浏览到网上相关方法看起来有点复杂,于是总结了下安卓自定义Toast自定义AlertDialog自定义Notification://1Toasttoast;publicvoidmyToast(){if(toast!=null){toast.cance

ym——Android酷炫实用的开源框架(UI框架)(终) 转载请注明本文出自Cym的博客(

Android基础—Viewpager做引导界面 一个APP,首次打开的时候,第一个看到的是一张欢迎图片,然后进入引导界面,引导界面完了之后才进入主界面。要完成这个功能,首先,把welcome.java

标签: android设计模式单例有几种

本文链接地址:https://www.jiuchutong.com/biancheng/387559.html 转载请保留说明!

上一篇:android实现点赞动画(安卓点赞脚本)

下一篇:[置顶] 快速掌握Android三个常用自定义控件Toast AlertDialog Notification(置顶快手作品怎么弄)

  • 增值税专用发票的税率是多少啊
  • 研发支出属于什么科目借贷方向
  • 简单的记账方法明细表格怎么做
  • 怎样根据税负率调账
  • 应交税金借方余额代表什么
  • 经营活动现金净流量公式
  • 年末增值税结转账务处理流程
  • 单位装修质保金扣留的会计处理
  • 出售股票公允价值变动在借方
  • 交通费补贴报销的会计分录怎么做?
  • 三证合一 更新
  • 母子公司往来款属于借款吗
  • 开发商买商铺
  • 股权转让印花税税目怎么填
  • 建筑业增值税专票抵扣后的税点是多少
  • 武汉房产税多少
  • 矿泉水售卖方式
  • 其他应收款借方表示增加吗
  • 财务报表中应收账款包括什么
  • 预缴所得税需要结转吗
  • 文化建设事业费优惠政策
  • 个税附加扣除如何填写合适
  • 物业税额
  • 工程服务发票税率3%
  • 存货跌价准备计提原则
  • 利润为负数怎么调
  • 电脑网卡介绍
  • 如何解决win7系统卡顿
  • 生产企业出口退税计算
  • php基础编程题
  • 增值税的具体内容包括
  • 未注销的坏账可以转出吗
  • 应酬用的香烟
  • yii2框架从入门到精通
  • 废旧物资回收经营单位
  • 个人合伙企业如何计算个人所得税
  • php-xml
  • useradd 删除用户
  • 贷款和应收款项属于金融资产吗
  • 长期待摊费用装修款如何摊销
  • 加权平均资本结构
  • 缴纳上年汇算清缴的分录
  • 电脑自学网
  • 委托代销商品支付的手续费计入什么科目
  • 差旅费抵扣所得税标准
  • 租金收入怎么做分录
  • sql删除表中的某一行
  • sql 语句插入结果为select和值混合示例
  • 退回的以前年度的附加怎么申报
  • 销项税和进项税计算公式
  • 暂估主营业务成本怎么冲销
  • 代扣代缴个人所得税手续费返还政策
  • 制造费用可以计提吗
  • 劳务费是否属于工资
  • 暂估入账错误了怎么办
  • 出库销售会计分录
  • 信用减值损失科目代码6702
  • 费用票成本票有哪些
  • 专利申请费用能走工会会费吗
  • 会计凭证数字书写模板
  • 最新商业会计科目做账
  • 物业管理企业应具备哪些条件
  • 建账过程中应注意的事项
  • mysql 源码 下载
  • 一岁的宝宝可以喝枸杞水吗
  • removed.exe - removed是什么进程 有什么用
  • mac不小心把硬盘删了怎么办
  • linux网络接口配置命令
  • Win7中TrustedInstaller.exe进程占用内存高该怎么解决?
  • jquery的实现原理
  • ftp下载怎么用
  • css全局样式基础代码
  • python占位
  • 骨骼动画程序设计
  • 批处理程序删除文件夹中临时文件
  • 使用jsonp跨域,服务端如何改
  • 对税务工作提出意见建议
  • 洛阳市房屋契税新政策
  • 允许抵扣和不允许抵扣进项税额的发票种类
  • 两利四率完成情况
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设