java okhttp包的类特点
1、开始使用这个包时候不习惯,觉得api用起来很别扭,不管是Request okhttpClient formBody只要是设置啥,就必须使用类里面的Builder类,然后一个方法接受一个参数,不停地调用每一个方法来接受一个参数进行属性设置,之前的py requests都是一个方法接受完各种参数就了事了。
2、OkHttpClient类两个构造方法。默认构造方法调用下面的有参构造方法,可以传一个构造好的Builder的实例到OkHttpClient类进行实例化。
但一般是OkHttpClient.Builder().funa(xx).funb(yy).func(zz).build()的方式来得到一个OkHttpClient.类型的实例。
Builder类是OkHttpClient类里面的一个静态类,所以才能用OkHttpClient.Builder()这种方式,然后就是用Bulider类里面的方法进行各种设置了。能连续的进行.funa(xx).funb(yy).func(zz)这种链式操作,是他在设置属性后,还返回了自身(this)。进行了OkHttpClient.Builder().funa(xx).funb(yy).func(zz)这一系列操作后得到的是一个Bulider类的实例,这还不是OkHttpClient类的实例。最后执行builder实例的buid()方法,把自身传到OkHttpClient的构造方法了,这才得到的是OkHttpClient的实例。
3、okhttp这个包里面的各个类基本都是有个类中类Builder,然后调用Bulider的各种方法进行设置,最后执行build,把builder实例自身传到Builder的上级类的构造方法。只有大致搞清楚了才能好好的调用他的api,不然会不知道到了哪一步得到的是什么类型的实例了,和为什么可以连续链式操作。
Bulider类
转载于:https://www.cnblogs.com/ydf0509/p/8669733.html
java okhttp包的类特点相关推荐
- 【JDK源码】java.lang包常用类详解
接下来的几天开始JDK源码的学习和总结,之前看<java编程思想>的时候看到java的基础知识有很多,其中支撑着这些基础的基础中的基础当属JDK.JDK的基础代码里面又分了很多基础的模块, ...
- Java中包、类、方法、属性、常量的命名规则
1:包(package):用于将完成不同功能的类分门别类,放在不同的目录(包)下, 包的命名规则:对于包名:每个字母都需要小写. 将公司域名反转作为包名.比如www.baidu.com 比如:com. ...
- JAVA——Okhttp封装工具类
基本概念 OKhttp:一个处理网络请求的开源项目,是安卓端最火热的轻量级框架. Maven <!--OK HTTP Client--><dependency><grou ...
- 【JDK源码】java.io包常用类详解
看完java.io的JDK源码,在网上发现一篇关于java.io中的类使用的文章总结的很全面,看完之后在原文的基础上加了一些自己的总结如下构成了本篇文章.原文地址 一.Java Io流 1. Java ...
- java.lang包—StringBuffer类和StringBuilder类
目录 一.数据结构 二.线程安全性分析 三.源码 四.适用场景 一.数据结构 在 Java 中字符串属于对象,Java 提供了 String 类来创建和操作字符串.String 类是不可变类,即一旦一 ...
- java中的 ok_java okhttp包的类特点
1.开始使用这个包时候不习惯,觉得api用起来很别扭,不管是Request okhttpClient formBody只要是设置啥,就必须使用类里面的Builder类,然后一个方法接受一个参数,不停地 ...
- java.lang包—枚举类Enum
原文作者:山高我为 原文地址:java enum的用法详解 目录 一.enum关键字 二.Enum类源码 三.疑问 四.Enum常见用法 一.enum关键字 enum关键字是在Java1.5也就是Ja ...
- java中包命名常见规则
做java的都知道java的包.类.接口.枚举.方法.常量.变量等等模型都有一套约定的命名规则! 学习每一种语言都应该学习对应语法和命名规则,以保持一个良好的编码风格.一来显示自己的专业.二来方便阅读 ...
- java怎么访问私有类_如何从Java类的外部访问类的私有方法?
您可以使用java反射包访问类的私有方法. 步骤1-通过传递声明为私有的方法的方法名称来实例化java.lang.reflect包的Method类. 步骤2-通过将值true传递给setAccessi ...
最新文章
- win7无线热点_Windos7系统笔记本设置无线热点教程,应急时候可以用
- [RHEL5企业级Linux服务攻略]--第9季 Squid服务全攻略之高级配置
- 叠加原理 戴维南定理
- 剑指Offer14-剪绳子12
- python使用redis做缓存_python实现类redis缓存
- C# 之 Excel 导入一列中既有汉字又有数字:数字可以正常导入,汉字导入为空
- 性能测试的需求如何确定
- java 文件解签加签_将更改的文件移到另一个分支进行签入
- linux常见权限相关错误及解决
- [置顶] javascript中的数组对象以及json学习笔记
- 触摸屏软键盘怎么调出来_触摸屏专用虚拟键盘下载
- ffmpeg m4a 转pcm_使用ffmpeg解码音频文件到PCM格式
- chardet.detect()
- PHP沉思录之三:Smarty
- 共享单车项目(一)--项目简介
- 魔兽世界服务器同时在线人数,魔兽世界服务器人数,魔兽世界服务器人数查询...
- Moore-Penrose 广义逆/伪逆 (The Moore-Penrose Pseudoinverse)
- Vim 插件 -- Pathogen
- powerbi服务器性能分配,Power BI 嵌入式分析性能最佳做法
- 【常用芯片】ULN2003工作原理及中文资料(实例:STM32驱动28BYJ48步进电机)
热门文章
- CRM WebClient UI的浏览器打印实现
- SpringBoot单元测试运行时报错:Failed to load ApplicationContext
- python获取字符串首字母_[Python] Python 获取中文的首字母 和 全部拼音首字母
- java提取字符从mysql_MySQL 字符串截取SUBSTRING()函数
- 计算机分级时无法度量视频播放,Win7 64位系统电脑评分出现“无法度量视频播放性能”怎么解决...
- 绑定dictionary 给定关键字不再字典中_VBA数组与字典解决方案第51讲:字典嵌套及二级下拉菜单的制作...
- excel删除重复数据保留一条_VBA利用字典删除重复行,保留唯一值
- 大数据学习规划(新手入门)
- matlab 求复数的模长,matlab计算带有复数的函数,最后求复数函数的模,结果里面却有...
- mysql 存储过程 条件_mysql sql存储过程条件定义与处理