自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

戴维尼老爷爷

保持专注 https://github.com/liyuzhen

  • 博客(17)
  • 收藏
  • 关注

原创 LruCache 源码剖析

LruCache 源码剖析前言有一定经验的开发者都知道这个类, 大多数情况 LruCache 类都被用在图片缓存这一块, 而其中使用了一个听起来高大上的算法 —— “近期最少使用算法”。 在经过一轮源码的解析之后, 我们会发现内部是使用了简单的技巧来实现的。源码剖析首先我们来看一下 LruCache 的构造方法public LruCache(int maxSize) { if (maxSiz

2017-03-26 16:53:42 850

原创 博客笔记图片

博客或有道云笔记的图片

2017-03-22 00:47:28 508

原创 java.lang.ThreadLocal 源码解析

ThreadLocal概述: 位于 java.lang 包下, 是一个线程内部的数据存储类, 通过它可以在指定线程中存储数据, 数据存储之后, 只有在指定线程中才可以获取到存储的数据。使用场景: Looper、 ActivityThread基本用法:mThreadLocal = new ThreadLocal<Integer>();mThreadLocal.set(10); // 通过 set

2017-03-19 17:19:56 748

原创 【工具类】Android 最有效的隐藏软键盘方法

前言在平时的 App 开发中, 免不了会遇到需要开发者隐藏软键盘的情况, 比如当在多个输入框填入个人基本信息, 最后有个保存按钮, 点击即可将个人基本信息保存, 这时就需要开发者编写代码去隐藏软键盘, 而不需要用户自己去手动隐藏, 这样大大提高 App 的用户体验。网上大多数给的方法public static void hideKeyboard() { InputMethodManager

2017-03-19 10:40:27 6065 2

原创 【开发艺术笔记】 View 事件分发机制

View事件分发机制三个重要的方法public boolean dispatchTouchEvent(MotionEvent ev) 用来事件的分发。 如果事件可以传递给当前 View, 那么该方法一定会被调用。public boolean onInterceptTouchEvent(MotionEvent ev) 在上述的方法内部调用, 用来判断是否拦截某个事件。 返回结果表示是否拦截当前事件

2017-03-18 23:50:07 368

原创 4个垃圾收集算法

概述:标记-清理算法,复制算法,标记-整理算法,分代收集算法Mark-Sweep算法描述 分两个阶段:先标记出需要回收的对象,再标记完成后统一回收已标记的所有对象。 缺点 ① 效率问题(标记和清除的效率都不高,要扫描整个内存区域) ② 碎片问题,执行完算法后会产生大量的不连续的内存碎片,空间碎片太多可能导致在程序的运行过程分配较大对象时,无法找到足够的连续内存从而不得不提前触发另一次垃圾收集

2017-01-09 17:15:32 409

原创 部分笔记—Java内存区域与内存溢出异常

Java与c++内存管理对比C或C++ 在内存管理区域,即拥有每一个对象的“所有权”,又担负者每一个对象生命开始到终结的责任Java 在虚拟机自动内存管理机制的帮助下,不再需要为每一个new操作去写配对的delete/free代码,不容易出现内存泄漏和内存溢出问题,由虚拟机管理内存。运行时数据区域Java虚拟机在执行java程序的过程中会把它所管理的内存划分为若干个数据区域。 【(方法区

2017-01-02 17:43:45 327

原创 安卓小技巧分享

今年从4月份做到11月底,与团队伙伴合作开发了两款公司内部员工工作时使用的APP,项目做得挺久的,做到最后也感觉好累,抗压能力还是不足吧,还需要多多锻炼。在开发的过程中,发现了许多小技巧,并记录下来,最近几天都不忙,就整理分享出来吧。UI篇自定义View动态测量宽高时,可以调用requestLayout(),让父布局再次调用onMeasure()与onLayout()方法,重新测量自定义view的

2016-12-10 22:36:50 1032

原创 foreach用错了?

foreach用错了?错误认识学了那么久的java了,我们大部分人对foreach的认识就是:只要遍历就用foreach语法,但事实上真的是这样么?for与foreach简单对比for:可以知道元素的位标、可以通过位标修改元素内容。 foreach:不能修改元素内容、“只读”操作、实质上使用Iterator遍历、但不能像Iterator一样直接用next()或hasNext()控制。深入forea

2016-12-08 21:58:36 2069

原创 使用百度SDK,地图不能显示 + 不能定位几步解决方法

百度地图在平时地图模块的开发中,最常见的问题就是地图显示不出来或者是不能定位,找了半天都不知道出了什么问题。经过两三个项目的开发后,我也学会了如何解决这类问题。现总结出以下几小点。其实按这几步走就能找出问题的所在了。一、API key的问题(地图不显示)检查一下Manifest文件中的key有没有错。 以下是我在项目中遇到的:    1) 在用svn协作的时候,队友为了在他的设备上显示地图,把k

2016-08-11 16:48:19 8827

原创 Crash异常分析

空指针 — NullPointException几个场景的避免方法: 1) 方法需要对传入的参数判空后再使用。 2) 在App中不要过多使用全局变量,因为一旦发生内存回收,这些全局变量的值都会被置为空,当使用这些变量的时候,不加判断的话,就会导致APP Crash。角标越界 – IndexOutOfBoundsException、StringIndexOutOfBoundsException、A

2016-08-06 23:06:40 1561 2

原创 UniversalImageLoader的使用

UniversalImageLoader问题:从网络获取图片、显示、回收,每个环节都可能造成应用的OOM(如果没做相关的处理的话)。像ListView或者是GridView中,一页就含有大量的图片,快速滑动的时候,没有OOM也会有卡顿的现象。解决办法:使用异步加载网络图片、缓存以及显示。ImageLoader的工作原理: 最后下载好图片,同时缓存到内存和本地中。当退出一个页面的时候,内存中Imag

2016-08-04 13:47:35 464

原创 并发编程

基本线程机制

2016-03-17 16:14:28 377

原创 移除子控件两种方式的区别

在正常情况下,移除一个view控件,通常都是先使用findViewById(int) 来获取该控件的实例,再调用它的setVisibility(int)的方法来隐藏或者移除该控件。但是如果ViewGroup中的子控件是动态的(或者说是没有指定id),那么要移除控件,就需要对父容器进行操作,移除的话有两种方式:调用getChildAt(int)方法获取子控件对象,之后调用其setVisibility

2016-01-30 17:27:47 7153

原创 判断两个对象内容相等与equals方法

判断两个对象内容相等 不能直接调用Object类里的equals方法,将equals方法写到Object类当中是让所有对象都拥有equals方法,,它的目的是给开发者重写的,不然其方法实现的功能与’==’一模一样 而用==号是不能判断两个对象内容相等的 eg. User a = new User(); User b = new User(); System.

2015-04-30 17:12:01 6308 1

转载 面向对象的思维方式

第一,首先确定谁来着,其次确定怎么做:对比一下c语言,c语言要实现一个功能,比如说要求一个数的平方根,只要调用一个函数就可以求出来,但在面向对象里面不是这样,首先应该考虑的是,求平方根的这件事应该是谁的任务,或者说是由谁来着,其次考虑怎么去做,这才是面向对象。第二,首先考虑整体,其次考虑局部:我就用我之前看到过的一个面试题做例子,那道题是这样的:假如让你用面向对象的思维方式去构造一部电梯,

2015-04-26 19:50:02 656

原创 记录一下,第一次用java写那么长,60行略长的代码,想了好久才懂怎么用

class BirthDate{private int day;                  //定义三个成员变量private int month;private int year;public BirthDate(int d, int m, int y) {          //构造器day = d;month = m;year = y;}

2015-04-17 21:38:03 586

空空如也

空空如也

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

TA关注的人

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