ImageVerifierCode 换一换
格式:PPT , 页数:16 ,大小:521.50KB ,
资源ID:6001792      下载积分:10 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.docduoduo.com/d-6001792.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录   微博登录 

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(Android高效编程.ppt)为本站会员(myw993772)主动上传,道客多多仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知道客多多(发送邮件至docduoduo@163.com或直接QQ联系客服),我们立即给予删除!

Android高效编程.ppt

1、Android高效编程指南,2010年03月,两个基本的原则,不要做不必要做的事情 尽可能的节省内存的使用,尽可能避免创建对象1(Avoid Creating Objects),越少的对象创建意味着越少的垃圾回收,这会提高你程序的用户体验质量。 例子: 尽量少创建没用的临时变量:,尽可能避免创建对象2(Avoid Creating Objects),尽量使用一维数组代替多维数组(将多维数组分割成几个平行的一维数组):如:两个平行的Foo和Bar要比一个(Foo,Bar)对象数组的效率高得多,使用原生方法(Use Native Methods),尽量使用对象自身带有的接口方法,因为这些方法有些是

2、使用C编写的,比自己用Java编写的效率高。 如String.indexOf()、String.lastIndexOf(),使用实现优于使用接口(Prefer Virtual Over Interface),1、Map myMap1 = new HashMap();/常规编程 2、HashMap myMap2 = new HashMap();/嵌入式编程 接口方法的调用比实现类方法的调用会花费2倍以上的时间。 多使用接口的具体实现类。,使用静态优于使用虚拟(Prefer Static Over Virtual),给方法加上static: 如果你没有必要去访问实例(对象)的变量,那么使你的方法成

3、为静态方法。它会被更快的调用,因为它不需要一个虚拟函数导向表。给属性加上static: 如果您的变量不需要被每个实例(对象)分享,那么使你的属性成为静态属性。它会被更快的调用,因为JVM只为静态分配一次内存,而非静态变量,每创建一个实例时, JVM就为非静态变量分配一次内存)。,内在避免使用Get/Set方法(Avoid Internal Getters/Setters),外部调用时使用Get和Set函数,但是在内部调用时,我们应该直接调用。虚方法的调用比实例属性查询的代价还要多。,缓冲对象属性调用(Cache Field Lookups),访问对象属性要比访问本地变量慢得多。 不要这样写:

4、for (int i = 0; i this.mCount; i+)dumpItem(this.mItemsi);应该这样写:int count = this.mCount;Item items = this.mItems;for (int i = 0; i count; i+)dumpItems(itemsi);,声明Final常量(Declare Constants Final),static int intVal = 42; static String strVal = “Hello, world!“; 当类被创建时,编译器会调用一个类初始化方法,这个方法会对intVal和strVal进

5、行初始化处理。可以写成如下: static final int intVal = 42; static final String strVal = “Hello, world!“; 初始化是由虚拟机来处理的,所以类的创建将更快。,慎重使用增强型For循环语句(Use Enhanced For Loop Syntax With Caution),增强的for循环在数组里面性能很好,但是当和Iterable对象一起使用时要谨慎,因为这里多了一个对象的创建。,避免使用枚举(Avoid Enums),public class Foo public enum Shrubbery GROUND, CRAW

6、LING, HANGING 这会转变成为一个900字节的class文件(Foo$Shrubbery.class)。第一次使用时,类的初始化要在独享上面调用方法去描述列举的每一项,每一个对象都要有它自身的静态空间,整个被储存在一个数组里面(一个叫做“$VALUE”的静态数组)。那是一大堆的代码和数据,仅仅是为了三个整数值,代价很高。,通过内联类使用包空间(Use Package Scope with Inner Classes),建议使用内部类。,避免浮点类型的使用(Avoid Float),尽量避免使用float类型:嵌入式的处理器通常并不支持浮点数的处理。所有的“float”和“double”操作都是通过软件进行的,一些基本的浮点数的操作就需要花费毫秒级的时间。,一些标准操作的时间比较,

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报