- 博客(73)
- 资源 (8)
- 收藏
- 关注
原创 Looper,Handler,HandlerThread
handlermHandler = new Handler(looper) {public void handleMessage(Message msg) {Log.i(TAG, Thread.currentThread().getName());}};处理handleMessage 是在looper所在 loop内private class myThrea
2014-04-29 19:51:09
393
翻译 Android tips
1.在application xml中使用全局的theme2.利用runOnUiThread确保某个runnable运行在ui 线程里3.利用4.在listView getView中利用Holer来实现图片文字的缓存,以使得listView滑动高效,避免出现无限制的调用findViewById使得多次DOM解析xml带来的低效率 static class ViewHolder
2014-04-28 10:10:42
374
原创 ConditionVariable
1.ConditionVariable在Android上实现Java object 的wait nofity的方法2.open 打开
2014-04-25 14:17:58
422
原创 Android 天气
表示天气的英语: http://www.360doc.com/content/11/0226/21/4130333_96426661.shtml
2014-04-09 20:01:48
383
原创 ActionBar
添加ActionBar在11或者更高版本,Theme.Holo包含了actionBar如果不想给一个activity配备actionBar,Theme.Holo.NoActionBar影藏或显示actionBarshow或者hide,当影藏或者显示的时候Actiity会重新布局布局的添加Action Items在onCreateOptionsMenu中获取 menu
2014-04-01 14:47:24
301
转载 面向对象准则
你不必严格遵守这些原则,违背它们也不会被处以宗教刑罚。但你应当把这些原则看成警铃,若违背了其中的一条,那么警铃就会响起 。 ----- Arthur J.Riel (1)所有数据都应该隐藏在所在的类的内部。 (2)类的使用者必须依赖类的共有接口,但类不能依赖它的使用者。 (3)尽量减少类的协议中的消息。 (4)实现所有类都理解的最
2014-03-31 17:53:15
419
原创 Fragment
1.Fragment拥有自己的生命周期,Fragmemt必须嵌套在activity之内使用,他的View是嵌套在acevtivity的view系统中的onAttach-onCreate-onCreateView-onActivityCreated-onStart-onResumeonPause-onstop-onDestroyView-onDestryo-onDetachonCre
2014-03-31 16:23:43
448
原创 JVM2:Jvm方法区
1. 当虚拟机装载某个类型时,它使用装载器定位相应的class文件,然后读入这个class文件,虚拟机提取其中的类型信息,并将这些信息存储到方法区,该类的类变量也同样存储在方法区。2.所有的线程共享方法区,对方法区的访问必须线程安全,方法区可以不必连续,方法区也可以被垃圾收集,当某个类不在被引用,可以卸载这个类。a.类型信息 对每个装载的类型,虚拟机都会再方法区存储:这个类型的
2014-02-26 11:47:11
436
原创 JVM1:概述
1.一个Java虚拟机的天职就是:负责运行一个Java程序,Java虚拟机通过调用某个类的main方法来运行程序的2.每个Java虚拟机有一个类装载器子系统,他更具给定的全限定名来装入类型,每个Java虚拟机都有一个执行引擎,他负责执行那些包含在被装载类的方法中的指令。3.每个Java虚拟机实例都有一个方法区和一个堆,他们有虚拟机中所有的线程共有,当虚拟机装载一个class文件时,他从这个
2014-02-26 11:46:40
601
原创 操作码9:finally子句
字节码中的finally子句在方法内部的表现很像“微型子例程”,每个try语句块与其后面的结尾处都会调用finally子例程,finally子句结束后,隶属于这个finalyy子句的微型子例程执行返回操作,程序在第一次调用微型子例程的地方继续执行后面的语句。jsr 跳转到子例程jsr ,branchbyte1,branchbyte21.Java虚拟机首先将紧随jsr指令
2014-02-25 17:11:29
474
原创 操作码4:逻辑运算
Java虚拟机的逻辑运算只要针对int和long类型ishl 向左对int类型进行移位操作 ishr 向右对int类型进行移位 >>(向右平移,符号为正,高位补0,符号位负,高位补1)iushr向有对int类型进行逻辑移位操作 ,(无论正负,在高位都补0)lshl 向左对long类型值进行移位操作lshrlushr位逻辑运算iand 对两个i
2014-02-25 17:08:28
632
原创 操作码2:类型转换
Java转换,先从栈顶弹出一个值,对它进行装换,然后再把转化结果压入栈i2l int转为li2fi2dl2il2fl2df2if2lf2dd2id2ld2f把int类型转化为占据更小的数据类型,先从操作数栈中弹出一个int类型值,将他转换为能用byte,short或char类型描述的int类型值,然后再把这个转化后的int类型值压入栈。
2014-02-25 17:07:27
493
原创 操作码1:栈和局部变量操作
int和float都是一个字长的值,Java栈的每个位置的长度都是一个字长(至少32位宽),每当一个int或者float类型被压入栈时,它都将占据一个位置。iconst_ml 将int类型值-1压入栈iconst_0 将int类型值0压入栈iconst_1 将int类型值1压入栈iconst_2将int类型值2压入栈iconst_3 将int类型值3压入栈icons
2014-02-25 17:06:41
612
原创 设计技巧39:利用Visitor模式实现对现有数据的封装和功能的添加
访问者模式将数据和行为分开来public class Visitor{//访问着visit(Acceptor acceptor);//访问者访问Acceptor,同时操作Acceptor}public interface Acceptor{//接受者accept(Visitor v);//接受访问者的访问,把自己的数据传递给访问者 }每当有新的行
2014-02-11 11:36:56
440
原创 设计技巧38:利用委托桥接类继承的功能层次和实现层次
类层次功能分为两个功能:1.添加新的功能2.添加新的实现;分离类层次这两个功能,利用委托来桥接两个类的层次public class Display{ //功能超类private DisplayImpl mDisplayImpl;public Display(DisplayImpl displayImpl){ //委托桥接mDisplayImpl = d
2014-02-08 16:36:10
456
原创 设计技巧37:利用迭代器访问集合内部元素
提供了外部访问集合的方法,而又不暴漏元素内部细节Interface Iterator{//迭代器接口object next();boolean remove();boolean hasNext();}public class Collection{//被迭代和观察的集合IteratorClas[] obs;get Iterator(){retu
2014-01-07 15:24:24
464
原创 设计技巧36:利用责任链责任转送
当有一个以上对象去处理消息的时候,使用责任链模式来实现每一个对象在处理的时候,如果自己处理了则不往下传送,不能处理则传送给链上的下一个对象去处理。好处:方便对处理的各个对象进行管理以及维护,解耦各个对象public abstrac class Support{//超类 Support mNext;void setNext(Support next){//添加下一
2014-01-07 14:58:47
369
原创 设计技巧35:使用泛型元组存储并返回对象
Tuple 元组笛卡尔积(两个集合X和Y的乘积)中每一个元素(d1,d2,…,dn)叫作一个n元组(n-tuple)元组是关系数据库中的基本概念,关系是一张表,表中的每行(即数据库中的每条记录)就是一个元组,每列就是一个属性。 在二维表里,元组也称为记录。 public class TwoTuple{//利用泛型传入不同类型参数 public final A first;//final 防止修改
2013-10-16 17:41:27
530
原创 设计技巧34:利用另外一个类,影藏接口实现,防止向下造型
public interface A{//公共接口 f()} class ConcretA implements A{//具体实现,包访问public f(){System.out.pint("ff");} public class HiddenA{ public static A getA{ return new ConcretA ();//获取实现方法}
2013-10-16 17:40:12
654
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人