- 博客(7)
- 收藏
- 关注
原创 Git 常用操作
# 简介 首先,这并不是一篇关于Git基本操作的分享,在看它之前你一要确信自己明白Git的简单操作与版本库、分支等基本概念。虽然小媛混迹Git有段时日,但是渐渐发现git add和git commit已经渐渐不能满足协作开发的需求,于是整理出一些在使用时会接触的到进阶操作,供后人敬仰,哦不,观赏。 ### 版本回退 reset `git reset --hard commit_i
2016-06-29 20:54:39 361
原创 HashMap源码分析
当我们需要存储key-value这样格式的数据的时候,我们通常会使用Map,实现Map接口的类有我经常使用的是HashMap,所以简单介绍下HashMap的源码部分。。。。。。。 1. HashMap的存储结构 HashMap的数据结构包括了数组与链表,他首先将每一对key-value数据存储为一个Entry类型(Entry内部包括key,value,一个int型的hash,
2016-06-29 20:26:25 247
原创 Android AlarmManager
API文档解读概述:这个类提供了一种系统的提示服务。他允许你安排你的应用在未来某个时间点的状态。当一个闹钟开始的时候,他内部通过系统广播注册的Intent会自动启动目标的应用(如果它不在运行的话)。当设备休眠时,已经被注册的闹钟会被保留(在运行时,他可以任意唤醒设备),但是当他被关闭或者重启时他所携带的信息将被清空。主要方法介绍AlarmManager为系统服务,使用AlarmManager ala
2016-06-29 20:03:05 242
原创 自定义View
View的绘制过程(东西太多下次再介绍)首先我们要了解View绘制的三个过程:onMeasure()、onLayout()和onDraw() onMeasure重点了解下MeasureSpec的specMode,一共三种类型: EXACTLY:通常是MATCH_PARENT或者是设置了具体的值; AT_MOST:表示子布局限制在一个最大值内,一般为WARP_CONTENT; UNSPECIFI
2016-06-29 20:00:41 196
原创 Thread
概念线程是并发执行的单位。它内部的参数,局部变量和唤醒的方法都有自己的调用堆。当一个应用打开的时候至少有一个线程在运行,它就是主线程,在主线程组中。运行时在系统线程组中保持它自己的线程。有两种方式运行一个新线程。你可以实现一个Thread的子类,然后覆写它的run方法,或者可以创建一个Thread,然后将一个Runnable对象当参数传入。无论使用上述哪种方式,都需要使用start方法来运行这个新线
2016-06-29 19:59:43 358
原创 Handler
官方文档Handler允许你发送和处理与线程消息队列相关的Message和Runnable对象。每个Handler实例都与单个线程及其线程队列相关。当你创建一个新的Handler时,它会绑定到创建它的线程所对应的消息队列,因此,handler会将Message和Runnable分发到消息队列中,当他们被从队列中取出时执行他们。Handler的两个主要的使用场景: 1. 安排一些在将来执行的Mess
2016-06-29 19:57:51 201
原创 ArrayList
ArrayList 源码分析构造函数/** * The minimum amount by which the capacity of an ArrayList will increase. * This tuning parameter controls a time-space tradeoff. This value (12) * gives empirically good resul
2016-06-28 23:15:38 256
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人