自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(11)
  • 资源 (2)
  • 收藏
  • 关注

原创 Java ReentranLock同步锁和Condition条件的使用

java.util.concurrent.lock 中的 Lock 框架是锁定的一个抽象,它允许把锁定的实现作为 Java 类,而不是作为语言的特性来实现。这就为 Lock 的多种实现留下了空间,各种实现可能有不同的调度算法、性能特性或者锁定语义。 ReentrantLock 类实现了 Lock ,它拥有与 synchronized 相同的并发性和内存语义,但是添加了类似锁投票、定时锁等候和可中断锁

2017-01-25 00:40:54 4711 1

原创 Java并发中的Copy-On-Write容器

Copy-On-Write是并发编程的一种优化策略, 其基本思路是,从一开始大家都在共享同一个内容,当某个人想要修改这个内容的时候,才会真正把内容Copy出去形成一个新的内容然后再改,这是一种延时懒惰策略。从JDK1.5开始Java并发包里提供了两个使用CopyOnWrite机制实现的并发容器,它们是CopyOnWriteArrayList和CopyOnWriteArraySet。CopyOnWri

2017-01-23 21:56:31 351

原创 Android SharePreferences 源码分析

在Android中, SharePreferences是一个轻量级的存储类,特别适合用于保存软件配置参数。使用SharedPreferences保存数据,其背后是用xml文件存放数据,文件存放在/data/data/ < package name > /shared_prefs目录下:简单使用SharedPreferences sharedPreferences = getSharedPrefer

2017-01-15 23:33:46 658

原创 Android ListView 源码分析

ListView 的源码实在太多, 重点分析ListView的几个机制ListView的继承关系可以看出,ListView和GridView的有极大的相似性,对ListView进行缓存,布局等操作都是在AbsListView中完成的.RecycleBin机制RecycleBin中的关键字段RecycleBin将View分为两级,ActiveView和ScrapView,如果当前的view处于可见状态

2017-01-08 23:26:26 409

原创 Java 反射技术及其应用

反射是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意方法和属性;这种动态获取信息以及动态调用对象方法的功能称为java语言的反射机制。下面介绍下反射在Java项目中的使用Class类的使用概念理解在Java中,每个class都有一个相应的Class对象。也就是说,当我们编写一个类,编译完成后,在生成的.class文件中,就会产生一个Class对

2017-01-07 20:05:23 382

原创 Android 性能监控与分析方法

Android应用性能测试通常包括:启动时间、内存、CPU、耗电量、流量、流畅度等。

2017-01-07 01:31:40 5298

原创 Android Animator 源码分析

关于Android 属性动画的使用,请见 http://blog.csdn.net/y874961524/article/details/53980165下面分析下Animator在Framework层的实现从ObjectAnimator.ofFloat()开始public static ObjectAnimator ofFloat(Object target, String propert

2017-01-03 00:59:20 1493 1

原创 Android Animator的使用(一)

在Android 中,实现一个View的动画有两种方式Animation和Aniamtor,在Android3.0以后,推荐使用Animator实现动画效果,下面简单比较下Animator和Animation的区别Animation实现原理在每次进行绘图的时候,通过对整块画布的矩阵进行变换,从而实现一种视图坐标的移动,但实际上其在 View 内部真实的坐标位置及其他相关属性始终恒定.Note: 这

2017-01-02 17:07:22 3399

原创 Java 线程的基本状态和操作

线程的几种状态在Java当中,线程通常都有五种状态,创建、就绪、运行、阻塞和死亡。第一是创建状态。在生成线程对象,并没有调用该对象的start方法,这是线程处于创建状态。第二是就绪状态。当调用了线程对象的start方法之后,该线程就进入了就绪状态, 但是此时线程调度程序还没有把该线程设置为当前线程,此时处于就绪状态。在线程运行之后,从等待或者睡眠中回来之后,也会处于就绪状态。第三是运行状态。

2017-01-01 21:22:32 891

原创 Java 基于JDK中的InvocationHandler实现动态代理

动态代理是代理模式的一种,而代理模式又是一种非常有用的模式之一.下面介绍下通过InvocatonHandler实现动态代理InvocationHandler接口InvocationHandler 是代理实例的调用处理程序 实现的接口。 每个代理实例都具有一个关联的调用处理程序。对代理实例调用方法时,将对方法调用进行编码并将其指派到它的调用处理程序的 invoke 方法。 关键方法Object

2017-01-01 15:18:05 633

原创 Android ListView addHeaderView()的调用顺序

从api文档上看,4.4以下版本 addHeader()必须在setAdapter()之前调用,4.4以后的版本中,addHeader()可以在任何地方调用/** * Add a fixed view to appear at the top of the list. If this method is * called more than once, the views wil

2017-01-01 00:55:23 909

Genymotion-ARM-Translation.zip

2016-05-23

android-support-v7-appcompat.jar

android-support-v7-appcompat.jar

2016-05-21

空空如也

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

TA关注的人

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