面试相关
文章平均质量分 77
迷途可达鸭
这个作者很懒,什么都没留下…
展开
-
单例模式的七种写法
一单例模式的介绍以及它的应用场景单例模式是应用最广的模式,也是我最先知道的一种设计模式,在深入了解单例模式之前,每当遇到如:getInstance()这样的创建实例的代码时,我都会把它当做一种单例模式的实现。其实经常使用的图片加载框架ImageLoader的实例创建就是使用了单例模式,因为这个ImageLoader中含有线程池、缓存系统、网络请求,很消耗资源,不应该创建多个对象,这时候就需要用原创 2017-07-28 14:41:27 · 950 阅读 · 2 评论 -
Android 内存泄漏的原因及解决
Java内存分配策略Java 程序运行时的内存分配策略有三种,分别是静态分配,栈式分配,和堆式分配,对应的,三种存储策略使用的内存空间主要分别是静态存储区(也称方法区)、栈区和堆区。静态存储区(方法区):主要存放静态数据、全局 static 数据和常量。这块内存在程序编译时就已经分配好,并且在程序整个运行期间都存在。栈区:当方法被执行时,方法体内的局原创 2017-11-14 10:21:54 · 446 阅读 · 1 评论 -
《Android开发艺术探索》 读书笔记---线程池(1)
除了Thread本身以外,能扮演线程角色的还有比如说:AsyncTask、IntentService、HandlerThread 它们的本质都是线程。AsyncTask底层应用到了线程池,IntentService和HandlerThread 它们底层则直接使用了线程。虽然都是线程,但是它们仍具有不同特性和使用场景。AsyncTask:封装了线程池和Handler,它主要是为原创 2018-01-17 13:43:47 · 271 阅读 · 0 评论 -
Android 线程池(1)
线程池算是Android 开发比较常用的了,涉及线程的地方大多数都会涉及线程池。举个栗子:假如我一个ListView,每个Item的图片需要从网上加载,如果我不使用线程池,则这样开启新线程:new Thread(new Runnable() { @Override public void run() {原创 2018-01-08 17:50:28 · 282 阅读 · 0 评论 -
面试题:ListView每个Item倒计时实现
那个。。。这个是之前面试的时候被问到的问题,那时给一个半小时要求实现这个功能,结果干坐一个小时没实现- -。 灰头土脸的走了。。。现在重新把这个实现了,然后贴出来吧。 只有代码,具体的思路不难,看一下就能看出来了。先从最简单的布局来吧MainAcrivity布局:<LinearLayout xmlns:android="http://schemas.android.com/apk/re原创 2018-01-18 17:34:12 · 978 阅读 · 1 评论 -
《Android开发艺术探索》 学习笔记---线程池(3)---HandlerThread
由于书中篇幅有限,所以是书中的一些加上网上的文章构成。先看一下HandlerThread特点:1,HandlerThread本质上是一个线程类,它继承了Thread。2,HandlerThread有自己的内部Looper对象,可以进行looper循环。3,通过获取HnadlerThread的Looper对象传递给Handler对象,可以在handleMessage方法中执行异步任务。4,创建Han原创 2018-01-19 15:11:54 · 311 阅读 · 0 评论 -
面试题:int与Integer关系、享元模式、自动拆箱/装箱
前面先直接把面试题 列出来// 面试题: Integer a = 1000; Integer b = 1000; Integer c = 100; Integer d = 100; // 在 -128 ~ 127 之外的数 // 在 -128 ~ 127 之内的数原创 2018-02-05 15:05:56 · 777 阅读 · 0 评论