自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(20)
  • 收藏
  • 关注

原创 MAT 工具的使用的一些知识

Mat工具 一、图示 1.饼状图:反应的大的对象的占用的retainedsize。 a.可以反映出相关对象所在的类,大小,以及classloader。 2.柱状图:根据不同的类类型的实例个数,按实例的数目多少列出。 a.根据不同的类类型来列出所占用的大小。比如int[]类型的大小占用。 b.通过listobjects->with incoming references找出具

2013-05-26 16:16:41 1374

原创 String StringBuilder StringBuffer区别

本文参考了http://wenku.baidu.com/view/8de1a06b011ca300a6c390d2.html 1.String类的对象 a.一旦创建就不能改变。 b.如果把一个引用的对象赋一个新值,只是将新的引用指向了一个新的对象,旧的对象依然没有变。(也就是每次赋一个新值都创建了新的对象) 2.StringBuffer, StringBuilder:

2013-05-25 19:33:03 558

原创 String 一些问题

前言: 等号“==”对于基本类型,比较的是值,对于引用类型,比较的是内存地址。 1.在对象池中创建,如果常量池中已经存在则返回常量池中已经有的。 private static void test1() { String s1 = "jiaozi"; String s2 = "jiaozi"; System.out.println("1 " + (s1 == s2

2013-05-25 18:18:54 719

原创 从产品角度考虑软件的开发的一些浅识

1.给不同尺寸的设备提供不同的展现交互方式I。 2.对于小尺寸的设备,通过减少一些非必要的功能来保持应用程序的简洁性。 3.对于可视部分的UI首先加载。 4.减少流量的耗费 a.流量设置:用户可以选择在wifi,普通的数据链接下不同的数据获取方式。 b.下载大物件:只在wifi情况下下载。 c.高清与节流模式。 5.使用动画代替干巴巴的跳转。 6.保证可点击的button足

2013-05-25 11:06:36 869

原创 Android 工程无法 build

可能有一下几个原因: 1.检查系统空间是否足够,否,删掉一些文件。 2.重启Eclipse。 3.Eclipse->Preference->Android->is Library是否unchecked。 4.检查Android SDK Manager是否安装了必须的插件,如build tools。 5.如果是重启Eclipse,重新build。

2013-05-25 09:01:19 1759

原创 设计模式-06-适配器模式-默认适配器模式

2013-05-18 10:09:49 1581

原创 设计模式-06-适配器模式

本文参考自《设计模式-可复用面向对象的基础》,《Java与模式》,《模式-工程化实现及扩展》 一、作用 把一个类的接口变换成客户端所期待的另一种接口,从而使因接口不匹配而无法在一起工作的两个类能够在一起工作(Gang of four)。 二、角色 1.Target:客户端期望的新接口。 2.Adaptee:需要被适配的目标类型,比较老的类型。 3.Adapter:完成对Ad

2013-05-18 09:25:17 815

原创 Android Launcher应用的加载过程

开机第一次启动过程如下 一、首先创建数据库相关 1.创建数据库favorites表。 2.从default_workspace.xml加载桌面默认的配置信息,写入数据库。 二、加载LauncherApplication 1.启动Launcher重写过的Application子类LauncherApplication。 2.在Application的onCreat

2013-05-13 23:24:06 1825

原创 TraceView的一些知识

一、步骤 1.在Activity中添加方法。 2.生成trace文件到sdcard。 3.使用traceview打开trace文件。 二、作用 1.不同颜色区分方法的执行时间。 2.可以列出方法本身的执行时间和方法的调用子函数所花费的时间。 3.可以搜索自己的方法,快速定位。 4.可以列出方法的调用者和被调用者。 5.双击方法可以显式说明方法的区间。

2013-05-13 14:46:46 729

原创 Android Hierarchy 工具的一些知识

1.可以显示measure,layout,draw使用的时间。 2.使用红绿灯指示可能有问题的地方,速度 :红 3.可以显示View的Id,通过id可以定位那个View。 4.可以显示出UI控件的截图来,方便识别。 5.看不同等级层次的Layout,比如说看Launcher最初布局分类。 6.可以看像素级别的放大图。

2013-05-13 11:33:33 699

原创 Android lint 能够做的事情

一、Android Lint能够查找到的问题 1.性能: 冗余的东西。 复杂的UI结构。 merge root View。 没有用的资源。 overdraw 2.正确性: sdcard路径hardcode,使用方法代替。 相同的id的view被引入。 Style文件中的循环调用。 Activity,service,ContentProvider在And

2013-05-13 11:20:48 757

原创 Mat 工具 能够做的事情

一、图示 1.饼状图:反应的大的对象的占用的retained size。 a.可以反映出相关对象所在的类,大小,以及classloader。 2.柱状图:根据不同的类类型列出相关的内存占用情况。 a.根据不同的类类型来列出所占用的大小。比如int[]类型的大小占用。 b.通过list objects->with incoming references找出具体的变量

2013-05-13 11:13:06 730

原创 设计模式-05-原型模式

本文参考自《设计模式之禅》,《Java与模式》 一、通过给出一个原型对象来指明所要创建的对象的类型。 二、Java中半支持 1.Ojbect类提供一个clone方法。 2.Java必须实现Cloneable来显式表明Javabean支持复制。 3.如果不实现Cloneable接口而直接使用,会抛出java.lang.CloneNotSupportedException。 4

2013-05-09 19:12:53 829

原创 设计模式-04-单例模式

设计模式-04-单例模式 本文参考自《Java与模式》 以及http://baike.baidu.com/view/1859857.htm 一、单例类的特点 1.某个类只能有一个实例。 2.构造器是private的(因此,单例类不能被继承)。 3.单例类必须自行创建自己的唯一实例。 二、单例的分类 1.饿汗式单例类 a.类图

2013-05-09 16:58:52 798

原创 设计模式-03-抽象工厂模式

设计模式-03-抽象工厂模式 本文大部分参考自《java与模式》 一、与工厂模式的异同 1.工厂模式是针对一个产品。 2.抽象工厂模式是针对有一定关系的多个不同产品。 二、特点 1.每个产品族都有一个具体工厂,也就是说每个具体工厂都可以生产全部产品,只是他生产的样式不同与其他工厂的。 2.抽象工厂里的声明了可创建的产品族,有多少个产品,在抽象工厂里便有多少个创建方

2013-05-09 13:33:45 663

原创 设计模式-02-工厂方法模式的剖析

设计模式-02-工厂方法模式的剖析 本文主要参见自《Java与模式》另外还有《设计模式之禅》 一、定义 1.将实际创建工作推迟到工厂接口的子类中。 二、简单工厂的优缺点 1.开闭原则支持的不够:客户端支持开闭原则,但是工厂本身不支持开闭原则。如果有新的产品过来,就需要相应的修改工厂类。 三、工厂方法模式的引进 1.工厂方法模式是简单工厂模式

2013-05-09 00:47:00 575

原创 简单工厂模式--使用--扩展--缺点--适用情况--

简单工厂模式的一些基本知识 本文主要参见自《Java与模式》 一、UML类图表示如下 二、角色如下 1.Product接口: a.含有具体产品的共有接口。 2.ProductA,ProductB a.工厂类所创建的这个角色的实例。 3.Factroy: a.简单工厂模式的核心。 b.工厂类在

2013-05-08 20:41:31 905

原创 代码重构-寻找坏味道

代码重构-寻找坏味道 本文参考了一下书籍: 《重构-改善既有代码的设计》 《重构手册》 1. 重复的代码 a) 封装成类,使用组合方式。 b) 封装成方法,通常是在同一类中。 c) 参数少的方法调用参数多的代码,并赋予默认值。 d) 提取公共基类,把共同的代码放到父类。 2. 过长 a) 方法

2013-05-08 10:30:26 738

原创 接口与抽象类的区别

接口 抽象类 意义 表示某种契约 表示事物的本质 多继承 是 否 标识 Interface声明 Abstract声明 方法 必须是抽象的(static与abstract本身意义本身冲突,所以接口中没有静态方法) 必须是public的 可

2013-05-07 21:24:27 477

原创 Android 性能优化的一些知识

性能优化的一些知识 本文参考多处分别是 书籍: 《重构-改善既有代码的设计》 《Android应用性能优化》 《Java程序性能优化》 《大话数据结构》 《深入理解Java虚拟机》 博客: http://www.cnblogs.com/xwdreamer/archive/2012/05/14/2499339.html http://www.androidside.com/doc

2013-05-07 20:08:57 977

空空如也

空空如也

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

TA关注的人

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