设计模式
从Android角度分析各种设计模式
Android小兰
Android小菜鸟,飞起来
展开
-
Android设计模式——代理
一,先说下静态代理:快520了,小王想去买SK2送女友,但是太贵了,于是拜托在国外的好友小P买,这位小P便是小王的代理。主体便是以下三个文件,小王和代理类都继承接口,实现具体的方法。//首先定义公共接口public interface ICustomer { void buySK2();}//表示小王的类public class XiaoWang implements ICustomer { @Override public void buySK2() {原创 2020-05-19 16:23:06 · 151 阅读 · 0 评论 -
Android设计模式汇总
一,先说六大原则:1,单一职责原则:就是一个类就做一件事,它有单一的职责,比如,activity就让它显示view,不管那些网络请求、适配器啥的。该原则注重职责,主要针对实现和细节。2,开放封闭原则:类、模块、函数是可以拓展的,但不能修改。这样代码比较稳定,比如不能碰到啥事儿就去修改基类,使用这个基类的可能不止这一个子类啊。3,里式替换原则:子类可以扩展父类功能,但不能改变父类原有功能...原创 2020-03-20 16:14:18 · 128 阅读 · 0 评论 -
Android设计模式——装饰者模式
先说定义:动态地给一个对象添加一些额外的职责。就增加功能来说,装饰模式相比生成子类更为灵活。这个模式属于结构型模式,比如我们给给自己的手机贴了膜,套上手机套,这就变成了一个不怕摔的手机,本质上还是手机,但是多了不怕摔的特性。所以,对于一个类,当要在不改变它的本质的基础上扩展一个类的时候,就需要装饰装饰了。举一个在源码中的例子,就是大家很熟悉的Context:Context是一个抽象类,...原创 2020-03-20 15:49:30 · 216 阅读 · 0 评论 -
Android设计模式——建造者模式
我感觉这个设计模式真是太简单,太好用了,这是一个创建型模式,定义是将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。我的理解就是不需要关心建造过程,就像做菜一样,需要啥直接拿过来用,想放酱油就拿酱油,想放醋就放醋。用途也很多,Retrofit和OkHttp都是用这个模式创建的,先看下OK HTTP的吧,简单说就是想增加拦截器就直接增加,想设置缓存也是直接设置,就像组装一...原创 2020-03-20 14:23:26 · 147 阅读 · 0 评论 -
Android设计模式——工厂模式和抽象工厂模式
简单说就是父类抽象出方法来,子类去实现。普通工厂模式:父类是抽象类,子类实现父类的抽象方法。抽象工厂模式:举例说明:普通工厂模式:1,先定义一个苹果的抽象类,并抽象出摘苹果的方法public abstract class Apple { public abstract void pluckApple();}2,以下两个子类继承父类,实现抽象方法,一个是红苹果...原创 2019-12-19 19:14:49 · 259 阅读 · 0 评论 -
Android设计模式——单例模式
这个模式就是词面意思,就是一个类就只有一个实例,这样可以实现资源的复用。一,写法有以下几种:1,懒汉式:为啥叫懒汉呢,因为它可以实现延时加载,当类初建时,只是声明了对象,只有用到时还会初始化,比较懒。缺点是不能保证单例,当线程比较多时肯定不行,如果你能确保调用这个类时是单线程并且想保证时效的话,可以酱紫。public class LazySingleton { privat...原创 2019-12-19 16:58:51 · 133 阅读 · 0 评论