随笔分类 - 概述篇
摘要:如果数据将在线程间共享。例如正在写的数据以后可能被另一个线程读到,或者正在读的数据可能已经被另一个线程写过了,那么这些数据就是共享数据,必须进行同步存取。 当应用程序在对象上调用了一个需要花费很长时间来执行的方法,并且不希望让程序等待方法的返回时,就应该使用异步编程,在很多情况下采用异步途径往...
阅读全文
摘要:设计模式单例模式定义:确保一个类只有一个实例,而且自行实例化并向整个系统提供这个实例。描述:只能使用单例类提供的方法得到单例对象,不要使用反射,否则将会实例化一个新对象。不要做断开单例类对象与类中静态引用的危险操作。多线程使用单例使用共享资源时,注意线程安全问题。工厂方法模式定义:定义一个用于创建对...
阅读全文
摘要:五种布局方式分别是:LinearLayout (线性布局),RelativeLayout(相对布局),TableLayout(表格布局),FrameLayout(框架布局),AbsoluteLayout(绝对布局)。 1、LinearLayout :线性布局,每一个LinearLayout里面...
阅读全文
摘要:1、强引用 平时我们编程的时候例如:Object object=new Object();那object就是一个强引用了。如果一个对象具有强引用,那就类似于必不可少的生活用品,垃圾回收器绝不会回收它。当内存空 间不足,Java虚拟机宁愿抛出OutOfMemoryError错误,使程序异常终止,也不会...
阅读全文
摘要:面向对象的编程思想 力图使计算机语言中对事物的描述与现实世界中该事物的本来面目尽可能的一致。类(Class)和对象(Object)是面向对象核心方法的概念。类是对一类事物的描述,是抽象的、概念上的定义;对象是实际存在的该类事物的每个个体,因而也称实例(Instance)。如果将对象比作汽车,那么...
阅读全文
摘要:架构图如下:1)英文版:2)中文版: 由图可知:Android 系统架构从下到上分为 Linux内核层、中间件、 应用程序框架层和应用程序层。 1、Linux kernel 负责硬件的驱动程序、网络、电源、系统安全以及内存管理等功能。 2、中间件:核心库和运行时(libraries & ...
阅读全文
摘要:1、程序 (program) 是为完成特定任务、用某种语言编写的一组指令的集合。即指一段静态的代码,静态的对象。2、进程 (process) 是程序的一次执行过程,或是正在运行的一个程序。动态过程:有它自身的产生、存在和消亡的过程。 1)如:运行中的QQ,运行中的MP3播放器 2)程序是静态的,...
阅读全文
摘要:在开发 Android 移动客户端的时候往往要使用多线程来进行操作,我们通常会将耗时的操作放在单独的线程中执行,避免其占用主线程而给用户带来不好的用户体验。但是在子线程中无法去操作主线程(UI线程),子线程中操作 UI 线程会出现错误。因此 Android 提供了一个类 Handler 来在子线...
阅读全文
摘要:1、数据库的 cursor 没有关闭,可以使用 startManagerCursor(cursor) 。2、构造 adapter 时,没有使用缓存 contentView,衍生 listView 的优化问题---减少创建 view 的对象,充分使用 contentView 可以使用一静态类来优化处理...
阅读全文
摘要:1、如果自定义适配器,那么在getView()方法中要考虑方法传进来的参数contentView是否为NULL,如果为NULL就创建contentView并返回,如果不为NULL则直接使用。在这个方法中尽可能的少创建View。2、给contentView设置tag ( setTag() ),传入一个...
阅读全文
摘要:Activity: Activity是Android程序与用户交互的窗口,是Android构造块中最基本的一种,它需要为保持各界面的状态,做很多持久化的事情,妥善管理生命周期以及一些跳转逻辑。Service: 后台服务于Activity,封装有一个完整的功能逻辑实现,接受上层指令,完成相关的事物...
阅读全文
摘要:MVC是Model,View,Controller的缩写,MVC包含三个部分: 模型(Model)对象:是应用程序的主体部分,所有的业务逻辑都应该写在该层。 视图(View)对象:是应用程序中负责生成用户界面的部分。也是在MVC整个架构中用户唯一可以看到的一层,接收用户的输入,显示处理结果。...
阅读全文