TCP 和 UDP 协议的区别 TCP/IP 是个协议组,可分为三个层次:网络层、传输层和应用层。 在网络层有 IP、ICMP、ARP、RARP 和 BOOTP 协议。 在传输层有 TCP 和 UDP 协议。 在应用层有 FTP、HTTP、TELNET、SMTP、DNS 2019-03-09 学习笔记 学习笔记 Android 中的 Handler 消息机制详解 Android 应用程序是通过消息来驱动的,Android 某种意义上也可以说成是一个以消息驱动的系统,UI、事件、生命周期都和消息处理机制息息相关,并且消息处理机制在整个 Android 知识体系中也是尤其重要。 消息处理机制消息处理机制 2019-03-05 Android Android Android 中的多进程通信机制 Android IPC 简介IPC是 Inter-Process Communication 的缩写,含义就是进程间通信或者跨进程通信,是指两个进程之间进行数据交换的过程。 那么什么是进程,什么是线程,在操作系统中,进程和线程是两个截然不同 2019-02-28 Android Android Android 中的多线程通信机制 线程简介在 Java 中,线程会有那么几种状态:创建,就绪,运行,阻塞,死亡。当应用程序有组件在运行时,UI 线程是处于运行状态的。默认情况下,应用的所有组件的操作都是在 UI线程里完成的,包括响应用户的操作(触摸、点击等)、组件生命周期方 2019-02-24 Android Android Java HashMap 的实现原理 数据结构中有数组和链表这两个结构来存储数据。 数组存储区间连续,占用内存比较严重,故空间复杂的很大,但数组的二分查找时间复杂度小,为 O(1)。数组的特点是:寻址容易,插入和删除困难; 链表存储区间离散,占用内存比较宽松,故空间复杂度很小 2019-02-22 Java Java Java 中 equals() 和 hashCode() 的作用 java.lang.Object 类中定义了 equals() 和 hashCode() 方法,Object 类是所有 Java 类的基类,所以所有的 Java 类都实现了这两个方法。 equals()equals() 方法的作用是用来判断 2019-02-18 Java Java Java 中 ArrayList、LinkedList 和 Vector 的区别 Java 中 ArrayList、LinkedList、Vector 是编程中经常使用的集合类,他们之间的区别也是经常在面试中会问到的问题。下面就底层实现、执行效率和线程安全性两个方法来看看三者的区别。 区别底层实现实现接口: Array 2019-02-16 Java Java Java 中 String、StringBuilder 和 StringBuffer 的区别 Java 中 String、StringBuilder、StringBuffer 是编程中经常使用的字符串类,他们之间的区别也是经常在面试中会问到的问题。下面就运算速度(运算性能或执行效率)和线程安全性两个方法来看看三者的区别。 区别运算速 2019-02-12 Java Java Java ThreadLocal 详解 简介java.lang.ThreadLocal 表示线程本地存储区(Thread Local Storage,简称为 TLS),每个线程都有自己的私有的本地存储区域,不同线程之间彼此不能访问对方的 TLS 区域。ThreadLocal 是 2019-01-31 Java Java Android 性能优化之绘制优化 绘制性能的好坏 主要影响 :Android应用中的页面显示速度 优化思路绘制影响 Android 性能的实质就是影响页面的绘制时间。 一个页面通过递归完成测量和绘制过程,即 measure、layout 过程。 因此可以从以下几个方面进 2019-01-25 Android Android 性能优化 Android 性能优化之布局优化 在 Android 中系统对 View 进行测量、布局和绘制时,都是通过对 View 树的遍历来进行操作的。如果一个 View 树的高度太高就会严重影响测量、布局和绘制的速度。Google 也在其 API 文档中建议 View 高度不宜超过 2019-01-23 Android Android 性能优化 Android 性能优化之启动优化 用户希望应用程序能够快速响应并加载。启动时间较慢的应用程序无法满足此预期,并且可能会令用户失望。这种糟糕的体验可能会导致用户在应用商店中对您的应用评分不佳,甚至卸载此应用。 因此想要优化应用程序的启动时间,需要以下几个步骤。首先,我们需要了 2019-01-21 Android Android 性能优化