一.asyncTask:主要是由线程池,和内部类InnerHandler来实现完成,异步方法由FutureTask实现了RunnableFuture接口,但是RunnableFuture也实现了Runnable接口和Future接口,主要是有个生命周期,可以灵活的与ui线程进行ui刷新。
第1个参数:启动时输入的参数类型
第2个参数::后台运行时的进度值
第3个参数::结束时返回结果的类型.
二.handlerThread:继承的Thread,主要有handler,Thread,looper来执行完成的,主要区分别创建线程时,会创建一个looper,通过单线程来实现。
三.retrofit:将一个java接口封装成一个http请求,里面的网络请求最终调用okhttp中的call请求
四.Butterknife:主要是通过注解的来实现初始化,并没有通过反射,当java编译时,先扫描注解,通过注解生成一个bindview的类,当定义控件时必须是public方法。
1)、在Activity 类中绑定 :ButterKnife.bind(this);必须在setContentView();之后绑定;且父类bind绑定后,子类不需要再bind。
2)、在非Activity 类(eg:Fragment、ViewHold)中绑定: ButterKnife.bind(t