1. 混合编程的实践与思考

    混合编程 混合编程是指选择择多种编程语言开发应用程序的过程。各种编程语言有各自的优势和劣势,取各自的长处,能显著提升开发效率。

  2. 字符编码总结

    理解字符编码的关键在于区分以下概念: 字符集,编码方式,实现方式(也可以说是转换格式)

  3. 大端模式和小端模式总结

    什么是大端和小端 我们平常谈论一个数字时,这个数字会有高位和地位之分,写在前面的为高位,写在后面的为地位,比如0x1234,那么高位字节为0x12,地位字节为0x34,而数字在计算机里的存储有两种方式,大端和小端:

  4. App2sd功能和Asec文件

    1. asec 文件是什么? asec的全称是Android Secure External Caches 以前app安装好之后,app和app的数据都是放在data分区,而data分区经常存储空间不够,

  5. Unable to open log device ‘/dev/log/main’

    调试Android程序时,经常不能看到日志,而DDMS输出Unable to open log device '/dev/log/main': No such file or directory 解决这个问题,目前有3种办法:

  6. Java内存模型(二)

    volatile型变量的特殊规则 volatile是Java虚拟机提供的最轻量级的同步机制,当一个变量被定义成volatile后,它将具备两种特性,第一是保证此变量对所有线程的可见性,这里的“可见性”是指当一条线程改变了这个变量的值后,新值对于其他线程来说是可以立即得知的;第二个语义是禁止指令重排序,普通的变量仅仅会保证在该方法的执行过程中所有依赖赋值结果的地方都能获取正确的结果,而不能保证变量赋值操作的顺序与程序代码中的执行顺序一致。

  7. Java内存模型(一)

    主存储器和工作存储器 Java虚拟机在执行Java程序的过程中会把它管理的内存划分为若干个不同的数据区域,这些区域包括方法区,堆,虚拟机栈,本地方法栈,程序计数器。方法区存储类信息,常量,字节码等数据,堆内存存储所有生成的对象,方法区和堆内存为所有线程共享,而虚拟机栈是每个线程独有的,也就是说每个线程有自己的虚拟机栈,线程执行时,每调用一个方法,就会在虚拟机栈上创建一个栈帧,栈帧信息包括方法的局部变量表,操作数栈。

  8. 多线程设计模式总结(三)

    接上一篇《多线程设计模式总结(二)》,这篇博客再聊一下最复杂的Active Object模式