java工厂模式的小理解(一)
来源:互联网 发布:象棋拆棋软件 编辑:程序博客网 时间:2024/06/14 15:05
java工厂模式的小理解(一)
一直觉得自己写的代码在耦合性上不理想,原因就是在许多的设计模式上非常不理解,也懒得去涉及。但是现在看来之前写的代码,冗余实在太多,现在都看不懂一周前写的代码。于是从今天开始就好好学习安卓的设计模式。
java的工厂模式在项目中经常用到,今天就从这里开始学习。好哒,开始啦。。。。。。
简单工厂模式
工厂模式,顾名思义就是在工厂里面完成产品的生产,一个工厂可以生产很多产品。比如奥迪的工厂,生产奥迪的车子,但是他可以生产Q3,Q5,Q7等一系列的车子。顾客提出要求要一辆购买Q5时,工厂马上就能生产Q5而不是生产其他的车系。
表达不好见谅,具体还是看代码比较好懂
抽象工厂类
package demo.pplive.com.test;/** * Created by jixiongxu * on 2017/9/27. */public abstract class Factory{ public abstract <T extends AudiCar> T CreatCar(Class<T> clz);}
实体工厂类
package demo.pplive.com.test;/** * Created by jixiongxu * on 2017/9/27. */public class RFactory extends Factory{ @Override public <T extends AudiCar> T CreatCar(Class<T> clz) { AudiCar car = null; try { car = (AudiCar) Class.forName(clz.getName()).newInstance(); } catch (Exception e) { e.printStackTrace(); } return (T) car; }}
抽象奥迪车类
package demo.pplive.com.test;/** * Created by jixiongxu * on 2017/9/27. */public abstract class AudiCar{ public abstract void Drive();}
实体奥迪车类Q3
/** * Created by jixiongxu * on 2017/9/27. */public class AudiQ3 extends AudiCar{ @Override public void Drive() { Log.d("jixiongxu:","AudiQ3"); }}
实体奥迪车类Q5
package demo.pplive.com.test;import android.util.Log;/** * Created by jixiongxu * on 2017/9/27. */public class AudiQ5 extends AudiCar{ @Override public void Drive() { Log.d("jixiongxu:","AudiQ5"); }}
实体奥迪车类Q7
package demo.pplive.com.test;import android.util.Log;/** * Created by jixiongxu * on 2017/9/27. */public class AudiQ7 extends AudiCar{ @Override public void Drive() { Log.d("jixiongxu:", "AudiQ7"); }}
到这里基本就完成了所以工厂和汽车的编写,接下来是客户提出需要,要求在工厂中生产
Factory factory = new RFactory(); AudiQ3 q3 = factory.CreatCar(AudiQ3.class); AudiQ5 q5 = factory.CreatCar(AudiQ5.class); AudiQ7 q7 = factory.CreatCar(AudiQ7.class); q3.Drive(); q5.Drive(); q7.Drive();
结果如下:
关于工厂模式的使用
目前在公司的项目中大致了解到使用的方向是在筛选view,一般来说,视频首页的许多数据会绑定各种各样的View,我们可以根据特定的标识符去获取到相关的view来展示。
notif
在这篇文章中使用反射来减少代码量,当然你也可以自己写固定的方法。
阅读全文
0 0
- java工厂模式的小理解(一)
- java的工厂模式理解
- java工厂模式的理解
- 对工厂模式的认识和理解(一)
- 工厂模式与抽象工厂模式小览(一)
- Java设计模式:工厂模式(一)简单工厂模式
- java 工厂模式的一种理解
- java设计模式(一)---工厂模式
- Java设计模式----工厂模式(一)
- Java设计模式(一):工厂模式
- java设计模式-(一)工厂模式
- 一分钟理解“工厂模式”
- 工厂模式的理解
- 工厂模式的理解
- 工厂模式的理解
- 工厂模式的理解
- 工厂模式的理解
- 工厂模式的理解
- HTTP Status 500
- Caused by: java.lang.IllegalStateException: Method findAllListByMember can only contain 1 method fie
- SGU 116. Index of super-prime(完全背包+输出路径)
- C语言 typedef修饰符
- 我的python学习笔记.while循环简介
- java工厂模式的小理解(一)
- js基础知识示例—js ajax请求
- Linux动态频率调节系统CPUFreq之三:governor
- 有关iOS11的适配问题
- apk空包签名方法及工具
- 在工作中遇到的一些没掌握的css用法
- iOS打包生成ipa的几种方式
- MySQL 5.7参考手册 目录
- mongodb自动关闭:页面文件太小,无法完成操作