摘要:
android中提供了<include />、<merge />、<ViewStub />三种优化布局。 1.<include /> 此布局通常用于一些复用较多的布局,方便后期维护。 <include />标签若指定了ID属性,而你的layout也定义了ID,则你的layout的ID会被覆盖。 <i 阅读全文
摘要:
多态性是OOP中的重要特性,在java中,多态性主要通过重载和重写两种方式实现。 当一个父类有多个子类,通过多态可正确地调用不同子类的方法: 但是也有需要注意的地方,如当父类的变量和方法为私有时: 结果并不是我们所认为的“public function public name”。因为父类的私有成员对 阅读全文
摘要:
继承和组合是java中非常常用的两种创建新类型的方法,两者都能提高代码的复用率。 继承主要是想让子类继承父类的基本特性;组合技术通常用于想在新类中使用现有类的功能,而非它的接口。两者的分别是"IS A"和"HAS A"的关系 继承: 组合: 一、相比于组合,继承有以下优点: 1、在继承中,子类自动继 阅读全文
摘要:
在讲述Socket之前,先简单了解一下相关网络基础知识。 OSI七层模型 从上往下分别是:应用层、表示层、会话层、传输层、网络层、数据链路层、物理层。 OSI是一个理想的模型,一般的网络系统只涉及其中的几层,在七层模型中,每一层都提供一个特殊的网络功能,从网络功能角度分类: 下面4层(物理层、数据链 阅读全文
摘要:
在java中,对象通常都是在程序运行时创建,程序退出后对象也就消失了。在许多情况下,我们需要将对象保存,方便下次再用,或者是用于网络传播,这里就需要用到序列化和反序列化了。 序列化:简单来讲就是将对象转化为字节序列。 反序列化:就是将字节序列重新转化为对象。 而想要将对象序列化,需要它的类实现Ser 阅读全文
摘要:
java中xml的解析方式有许多,有java自带的DOM、SAX,android中的PULL,其它的还有DOM4J、JDOM等。 本文简要讲述DOM、SAX、PULL三种方式。 1.DOM方法 缺点:此方法会将所有数据都读取到内存中,内存消耗大,数据量太大容易造成OOM,而且此方法的效率较低,所以不 阅读全文
摘要:
相比于xml,json的主要特点是数据小,解析速度快,但是描述性差。 java中常见的json解析方法有Gson、Jackson、JSON.simple。 从解析速度上来看,Gson适合解析小数据量,Jackson适合解析大数据量的,JSON.simple解析大数据量和小数据量速率都很快。 先展示一 阅读全文
摘要:
java编程中,为了将对象的状态保存,需要将对象序列化。 在android中,序列化有两种方法可供选择,一个是java自带的序列化方法,只需实现Serializeable接口即可;另一个是android提供的方法,要实现Parcelable接口,并实现其中的一些方法,相对要复杂一些。 两者区别: P 阅读全文
摘要:
一、文件存储 文件存储主要是I/O流的操作,没什么好说的,需要注意的是保存文件的各个目录。 下面为常用的目录: 其中,除了getExRootDir()和getExPublicDir()两个目录,其余的目录中的数据都会随app的卸载而删除。 上面的几个方法都是对目录/data/data/(packag 阅读全文
摘要:
SQLite文件保存在/data/data/(packagename)/databases SQLite中的基本数据类型有NULL(空值)、INTEGER(整型)、REAL(浮点型)、TEXT(字符串)、BLOB(二进制对象)。 当向数据库中插入记录时,它会判断所插入的数据类型和该列的类型是否一致, 阅读全文