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包的类特点的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: activity生命周期图
- 下一篇: [BZOJ 1026] [SCOI 20