初识封装(Http)

1、方法参数过多时,可用实例类将参数抽取出来,再用构造函数实例化。

eg:
private static HttpURLConnection get(Request request){}

2、暴露给外部一个方法public,其余用private方法,可用枚举。

enum RequestMethod{GET,POST,PUT,DELETE}

switch (request.requestMethod) {
case GET:
case DELETE:
    return get(request);
case POST:
case PUT:
    return post(request);
}

3、可用接口实现回调,实现异步。

4、声明什么样的泛型,返回什么样的Object。

 interface ICallback<T>{
 void Success(T result);
 void Failure(Exception e);
 T parse(HttpURLConnection connection) throws Exception;
 }

5、用接口的实现类抽取多方法的共性。

HttpURLConnection get(Request request){
return httpConnection;
}

request.icallback.parse(httpConnection);

6、去除回调函数不要共同实现的方法(不同Object,不同的实现方法),用抽象类。

public abstract class AbstractCallback<T> implements ICallBack<T> {

@Override
public T parse(HttpURLConnection connection) throws Exception {
    int status = connection.getResponseCode();
    if (status == 200) {
        ByteArrayOutputStream out = new ByteArrayOutputStream();
        InputStream is = connection.getInputStream();
        byte[] buffer = new byte[2048];
        int len;
        while ((len = is.read(buffer)) != -1) {
            out.write(buffer, 0, len);
        }
        is.close();
        out.flush();
        out.close();
        String result = new String(out.toByteArray());

        return bindData(result);

    }
    return null;
}
/**
* 对于一个父类,如果它的某个方法在父类中实现出来没有任何意义,
* 必须根据子类的实际需求来进行不同的实现,
* 那么就可以将这个方法声明为abstract方法,此时这个类也就成为 abstract类了
 */
protected abstract T bindData(String result) throws Exception;

}

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...
    子非鱼_t_阅读 34,670评论 18 399
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 136,551评论 19 139
  • 一:java概述:1,JDK:Java Development Kit,java的开发和运行环境,java的开发工...
    ZaneInTheSun阅读 2,812评论 0 11
  • 前言 人生苦多,快来 Kotlin ,快速学习Kotlin! 什么是Kotlin? Kotlin 是种静态类型编程...
    任半生嚣狂阅读 26,688评论 9 118
  • 所谓成熟就是,你要习惯任何人的忽冷忽热,也要看淡任何人的渐行渐远。 人总是有过好多的朋友,好到你以为一个伸手就能牵...
    小姐好白_阅读 275评论 0 2

友情链接更多精彩内容