
面试
文章平均质量分 81
源代码科技
资深Android工程师、技术管理
展开
-
android高薪之路--笔试面试题汇总
1. 下列哪些语句关于内存回收的说明是正确的? (b ) A、 程序员必须创建一个线程来释放内存 B、内存回收程序负责释放无用内存 C、内存回收程序允许程序员直接释放内存 D、内存回收程序可以在指定的时间释放内存对象 2. 下面异常是属于Runtime Exception 的是(abcd)(多选) A、ArithmeticExcept转载 2014-11-27 14:45:43 · 1121 阅读 · 0 评论 -
有关android ANR
ANR一般有三种类型:1:KeyDispatchTimeout(5 seconds) 按键或触摸事件在特定时间内无响应2:BroadcastTimeout(10 seconds)BroadcastReceiver在特定时间内无法处理完成3:ServiceTimeout(20 seconds) Service在特定的时间内无法处理完成KeyDispatch原创 2014-11-26 14:29:35 · 1102 阅读 · 0 评论 -
单线程模型中Message、Handler、MessageQueue、Looper之间的关系
Handler简介:一个Handler允许你发送和处理Message和Runable对象,这些对象和一个线程的MessageQueue相关联。每一个线程实例和一个单独的线程以及该线程的MessageQueue相关联。当你创建一个新的Handler时,它就和创建它的线程绑定在一起了。这里,线程我们也可以理解为线程的MessageQueue。从这一点上来看,Handler把Message和Runa原创 2014-11-28 16:29:56 · 1518 阅读 · 0 评论 -
有关synchronized同步笔记
synchronized关键字可以作为函数的修饰符,也可作为函数内的语句,也就是平时说的同步方法和同步语句块。如果再细的分类,synchronized可作用于instance变量、object reference(对象引用)、static函数和class literals(类名称字面常量)身上。注意:A.无论synchronized关键字加在方法上还是对象上,它取得的锁都是对象,而不是原创 2014-11-27 17:26:16 · 1068 阅读 · 0 评论 -
多线程安全
首先要明白线程的工作原理,jvm有一个main memory,而每个线程有自己的working memory,一个线程对一个variable进行操作时,都要在自己的working memory里面建立一个copy,操作完之后再写入main memory。多个线程同时操作同一个variable,就可能会出现不可预知的结果。根据上面的解释,很容易想出相应的scenario。原创 2015-12-26 11:25:25 · 630 阅读 · 0 评论 -
ArrayList Vector LinkedList HasMap等区别与用法
ArrayList 和Vector是采用数组方式存储数据,此数组元素数大于实际存储的数据以便增加和插入元素,都允许直接序号索引元素,但是插入数据要设计到数组元素移动等内存操作,所以索引数据快插入数据慢,Vector由于使用了synchronized方法(线程安全)所以性能上比ArrayList要差,LinkedList使用双向链表实现存储,按序号索引数据需要进行向前或向后遍历,但是插入数据时只需要原创 2015-12-26 10:49:53 · 819 阅读 · 0 评论