摘要: Handler一般用于线程间通信,如常用的子线程使用handler让主线程更新UI。那么这是怎么实现的呢? 我们先把这个大问题分解成多个小问题: 1. `post();postDelayed();sendMessage();sendEmptyMessage();`等方法有什么不同? 2. Handl 阅读全文
posted @ 2023-06-14 13:26 Ysun_top 阅读(300) 评论(0) 推荐(0) 编辑
摘要: # `MessageQueue.IdleHandler` IdleHandler是MessageQueue内部的一个接口,他是一个空闲处理程序。 就是一个在MessageQueue获取不到Message消息时执行的接口。 我们看看MessageQueue空闲时执行的代码: ```JAVA Messa 阅读全文
posted @ 2023-06-14 13:25 Ysun_top 阅读(26) 评论(0) 推荐(0) 编辑
摘要: # 传输层 1. 传输层的主要功能是什么? 1. 分割并重新组装上层提供的数据流,为数据流提供端到端的传输服务。 2. 传输层如何区分不同应用程序的数据流? 1. 因为,对应传输层而言,它只需要知道目标主机上的哪个服务程序来响应这个程序,而不需要知道这个服务程序是干什么的。因此,我们只需要能够抽象的 阅读全文
posted @ 2023-06-14 13:23 Ysun_top 阅读(28) 评论(0) 推荐(0) 编辑
摘要: 在tcp协议中,主动发起连接请求的为客户端,被动连接的为服务端。初次连接有三次握手,即三个报文的交换。释放连接时有四次挥手,即4个报文的交换。 三次握手的过程。有A客户端、B服务端。B服务器进程首先创建传输模块,准备接收客户端的连接请求。这时服务端处于listen监听状态。A客户端进程先创建传输模块 阅读全文
posted @ 2023-06-14 13:20 Ysun_top 阅读(109) 评论(0) 推荐(0) 编辑
摘要: # Socket的具体使用 ## TCP: 首先服务端创建一个ServerSocket,并绑定目标端口,然后循环调用accept方法,这个方法用于监听客户端的连接,它是阻塞的,当收到连接后继续执行,这时创建一个新的线程,用于为这个客户端提供服务,然后重新循环刚才的流程。 客户端创建一个Socket, 阅读全文
posted @ 2023-06-14 13:16 Ysun_top 阅读(134) 评论(0) 推荐(0) 编辑
摘要: # JAVA的设计模式 首先我们应该知道什么是设计模式? 一个设计模式是某些问题或情况下的一种通用解决方案。 Java的设计模式有三种: 1. 创建型模式:对象实例化的模式,创建型模式用于解耦对象的实例化过程 2. 结构型模式:把类或对象结合在一起形成一个更大的结构 3. 行为型模式:类和对象如何交 阅读全文
posted @ 2023-06-14 12:16 Ysun_top 阅读(58) 评论(0) 推荐(0) 编辑
摘要: ## 定义 给某一个对象提供一个代理,并由代理对象来控制对真实对象的访问。 代理模式可以分为3个角色: 1. Interface:定义代理类和真实主题的公共对外方法,也是代理类代理真实主题的方法 2. Implement:真正实现业务逻辑的类 3. Proxy:用来代理和封装真实主题 代理模式使用场 阅读全文
posted @ 2023-06-14 12:15 Ysun_top 阅读(9) 评论(0) 推荐(0) 编辑
摘要: # 单例设计模式 某个类只能有一个实例,提供一个全局的访问点。 ## 单例模式的N种写法 ```JAVA //第一种 //不能实现单例对象的延迟加载 public class AClass { private AClass() { } public final static AClass INSTA 阅读全文
posted @ 2023-06-14 12:14 Ysun_top 阅读(6) 评论(0) 推荐(0) 编辑
摘要: # Android 设计模式MVC、MVP、MVVM ## MVC: ### 概念: MVC全名是Model View Controller,是模型(model)-视图(view)-控制器(controller)的缩写,一种软件设计典范,用一种业务逻辑、数据、界面显示分离的方法组织代码,在改进和个性 阅读全文
posted @ 2023-06-14 12:13 Ysun_top 阅读(191) 评论(0) 推荐(0) 编辑
摘要: # 链式编程 首先需要知道什么是链式编程, 在编码中,`(方法).(方法).(方法).(方法)`这种就属于链式编程, 在Android中的AlertDialog控件就是属于链式编程,还有RxJava 方便理解,上代码例子 ```JAVA /** * 链式调用 * @author k.k */ pub 阅读全文
posted @ 2023-06-14 12:04 Ysun_top 阅读(36) 评论(0) 推荐(0) 编辑
摘要: 首先什么是堆栈。在Java中,内存分为两种,一种是栈内存,另一种就是堆内存。 ## 栈内存 栈内存是Java的另一种内存。 主要是用来执行程序用的,它用于在运行时储存方法的参数、方法的局部变量。 - 特点:先进后出,后进先出 - 存取速度比堆要快,但存在栈中的数据大小与生存周期必须是确定的 ## 堆 阅读全文
posted @ 2023-06-14 12:01 Ysun_top 阅读(42) 评论(0) 推荐(0) 编辑
摘要: # Java集合框架List,Map,Set等全面介绍 来源:http://android.blog.51cto.com/268543/400557/ Java Collections Framework是Java提供的对集合进行定义,操作,和管理的包含一组接口,类的体系结构。 ### 相关文章: 阅读全文
posted @ 2023-06-14 11:56 Ysun_top 阅读(17) 评论(0) 推荐(0) 编辑
摘要: # JAVA中List和Map的实现结构介绍 ## Collection(单列集合) ### List(有序,可重复) ### ArrayList - 底层数据结构是数组,查询快,增删慢 - 线程不安全,效率高 ### Vector - 底层数据结构是数组,查询快,增删慢 - 线程安全,效率低 ## 阅读全文
posted @ 2023-06-14 11:53 Ysun_top 阅读(47) 评论(0) 推荐(0) 编辑