自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(17)
  • 资源 (1)
  • 收藏
  • 关注

原创 LinkedHashMap源码分析

分析完HashMap后,继续分析它的子类LinkedHasMapLinkedHashMap与HashMap的区别是,LinkedHashMap记录插入或者访问map元素的顺序,在执行迭代输出元素的时,会按插入的顺序输出LinkedHashMap用了一个双向链表记录插入或者访问的顺序 先看put方法,LinkedHashMap的put方法是用的父类HashMap的put方法 p...

2018-07-23 09:01:58 200

原创 HashMap源码分析

HashMap是一个常用的类。它与HashTable类似,只不过它可以设置key和value为null,且它不是线程安全的。它有两个参数影响性能,一个是initial capacity,一个是load factorinitial capacity 默认值是4,load factor的默认值是0.75 看下HashMap的构造方法public HashMap() {this...

2018-07-17 16:54:57 362

原创 IntentService源码分析

要分析Servcie和IntentService有什么区别,不如直接看一看IntentService的源码public abstract class IntentService extends Service {private volatile Looper mServiceLooper;private volatile ServiceHandler mServiceHandler;private...

2018-07-07 15:47:31 339

原创 ThreadLocal源码分析

今天分析ThreadLocal先看源码注释* This class provides thread-local variables. These variables differ from* their normal counterparts in that each thread that accesses one (via its* <tt>get</tt> or &l...

2018-07-04 15:15:31 357

原创 AsyncTask源码分析

AsyncTask适合轻量级的线程任务,它简化了Handler和Thread的操作,分析其源码其实里面就是封装了Thread和Handler。今天具体分析其源码AsyncTask是一个抽象类,带有3个泛型的参数,可以自定义一个类继承AsyncTaskclass MyAsyncTask extends AsyncTask<Integer,Integer,Void>{@Overridepr...

2018-07-04 09:22:08 152

原创 Handler源码分析

Android的消息机制就是指Handler机制,今天分析Handler的源码从sendMessage方法看起public final boolean sendMessage(Message msg){    return sendMessageDelayed(msg, 0);}继续点进去public final boolean sendMessageDelayed(Message msg, lo...

2018-06-29 16:14:39 153

原创 Dagger2源码分析一

写一个最基本的注入过程,分别有ClassA,ModuleA,ComponentA三个类public class ClassA {}@Modulepublic class ModuleA {    @Provides    public ClassA provideA(){        return new ClassA();    }}@Component(modules = ModuleA.c...

2018-06-21 10:12:34 196

原创 ButterKnife源码分析

分析方法,从入口Debug单步调试入口,从Activity的OnCreate中的 ButterKnife.bind(this) 入手@NonNull @UiThreadpublic static Unbinder bind(@NonNull Activity target) {View sourceView = target.getWindow().getDecorView();return cr...

2018-04-13 09:57:01 232

原创 EventBus源码分析2

分析EventBus.getDefault().post()方法public void post(Object event) {PostingThreadState postingState = currentPostingThreadState.get();List<Object> eventQueue = postingState.eventQueue;eventQueue.add...

2018-04-13 09:55:39 193

原创 EventBus源码分析1

EventBus是一个基于观察者模式的一个开源框架,我这里从两个入口分析源码,一个是EventBus.getDefaut().register(),一个是EventBus.getDefaut().post(new Event()),分两篇文章分析。注意:下面的代码EventBus是3.1.1版本的compile 'org.greenrobot:eventbus:3.1.1'我们可以在MainAct...

2018-04-13 09:54:44 204

原创 Rxjava源码分析

Observable.create(new ObservableOnSubscribe() {            @Override            public void subscribe(ObservableEmitter emitter) throws Exception {                Log.i("xiang","发射.1");       

2017-12-04 09:39:13 254

原创 adb批处理将手机数据库文件拷贝到电脑

写一个批处理文件,代码如下adb shell "su -c 'chmod 777 /data'"adb shell "su -c 'chmod 777 /data/data'"adb shell "su -c 'chmod 777 /data/data/com.hame.battery'"adb shell "su -c 'chmod 777 /data/data/com.

2017-06-06 18:26:05 849

原创 Android自定义控件-金额输入框

最近项目上用到一个金额输入的功能,基本功能包括可以输入小数,然后小数位数限制为2位。我用自定义的EditText实现了这个功能 思路:写一个类继承EditText,然后在构造方法中设置OnTextChangeLisener,如果输入的文字包含小数点,且小数位大于2,则在输入完后,删除掉最后一位 代码如下:/** * 金额输入框,限制小数位为2位 * * @auth...

2016-04-28 21:09:44 1995

原创 Hybrid app开发总结

一、所用技术    html5 、angularJs  、cordova、ionic二、环境搭建     要使用cordova、ionic开发要搭建好cordova、ionic的开发环境     步骤如下:     1.安装node.js     下载链接https://nodejs.org/en/          2.安装cordova

2016-01-04 19:09:58 1230

原创 cordova ionic相关命令

把最近项目中cordova ionic用的命令总结如下:安装cordovanpm install -g cordova删除cordovanpm uninstall cordova -g安装ionic npm install -g ionic配置平台ionic platform add android(ios)

2015-12-10 19:33:08 467

原创 javascript字符串单引号与双引号的区别

最近在使用javascript编程,遇到使用字符串的情况写了一点测试代码 var str = 'This is Jack'; var str2 = 'This is Tom'; var str3 = 'This is "Rose"'; var str4 = "This is 'LiLi'"; var st

2015-12-03 19:09:16 8357

原创 adb无法连接手机问题解决方案

最近做安卓项目,总是会遇到adb无法连接到手机的情况,截图如下:分析原因是多个程序使用adb连接到手机,使得连接混乱解决方案一:使用360手机手机助手连接,貌似360很强大,其他的手机助手都不行但是用360连接有个问题,就是用adb devices会显示有两个连接,但是不会影响开发第一个方案没有解决根本问题,但是省事简单傻瓜下面看解决方案二:

2015-02-01 13:56:22 1627

java23种设计模式

Java23种设计模式,疯狂java总结

2015-02-01

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除