android工厂模式源码,每日Android源码设计模式之-四、工厂模式

工厂模式相信大家很熟悉了,使用得很多

定义:

定义一个用于创建对象的接口,让子类来决定实例化哪个类。

使用场景:

任何需要生成复杂对象的地方,都可以使用工厂模式

使用方法:

有一个抽象的产品类,然后具体的子类去实现它。

然后有一个Factory类,在类里面有一个的createProduct方法,用来根据传入的参数创建具体的哪个产品类。

也可以传入Xxxx.Class,用反射来生成具体的实现类。

不用多讲了,实现很简单。

在android中的应用

我们知道Activity中有一个onCreate方法,onCreate中有一个setContentVIew设置了不同的view进去,不同的Activity设置了不同的View为当前界面的ContentView并传输给framework处理,大家体会下,其实这就是一个工厂模式结构。

工厂模式实战:

我们在进行数据存储的时候,可以写入文件流,可以写入SQlite数据库,可以写为xml文件等。

这时候我们可以定义一个抽象的类,里面有增删改查四种抽象方法,在具体的文件流、SQlite、xml文件写入类中具体实现。

最后在写一个工厂类,我们使用的时候往工厂类中通过传入Xxxx.class来生成实例并返回。

然后就可以调用增删改查方法。

总结,可能的缺点是当我们多了一个新产品的时候,需要编写一个新的产品类,还要引入抽象层,使得结构复杂度提高。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值