Retrofit原理学习

一、首先,我们先了解下动态代理,因为这里Retrofit的网络请求主要用到动态代理

  1. 代理模式,是常用的设计模式,他的特征是代理类与委托类具有相同的接口,代理类主要为委托类预处理消息、过滤信息、把消息转发给委托类、以及事后处理消息等。代理类与委类一般会存在关联关系,一个代理类的对象与一个委托类的对象关联,代理类对象本身并不提供服务,而是通过调用委托类对象相关的方法来提供服务。

  按照代码的创建时期,代理类可分为两种:

  a)静态代理:通过代码工具或手写生成源代码,再对其编译。在程序运行前,代理类相关.class就已经存在;

  b)动态代理:在程序运行时,通过反射机制动态创建而成;

  静态代理:

  静态代理其实就是按照代理模式,实现了代理类与委托类之间的调用方式,可以看作是代理模式的写法

  

  动态代理:  

二、代理关键的部分: ServiceMethod

三、如何从注解中得到请求参数

四、与rxjava结合使用的原理

猜你喜欢

转载自www.cnblogs.com/johnnyzhao/p/10399993.html
今日推荐