排序的原理都是一样的,都是经过length-1轮排序,每一轮拿到一个最大值或者最小值,放到数组的最前面或者最后面 ,然后剩下的值进入下一轮排序。 排序一个数组s=[2,6,9...
排序的原理都是一样的,都是经过length-1轮排序,每一轮拿到一个最大值或者最小值,放到数组的最前面或者最后面 ,然后剩下的值进入下一轮排序。 排序一个数组s=[2,6,9...
View的绘制和事件处理是两个重要的主题,上一篇《图解 Android事件分发机制》已经把事件的分发机制讲得比较详细了,这一篇是针对View的绘制,View的绘制如果你有所了...
概述 话不多说,先上图 再看一段熟悉的代码: 问题来了:1.setContentView(@LayoutRes int layoutResID)是如何将布局加载到上图中Con...
概述 Handler无疑是Android的异步消息处理机制的核心,这遍文章将通过分析Handler的源码来系统的解析Android异步消息机制。 Handler的使用 打印结...
概述 当一个对象的内在状态改变时允许改变其行为,这个对象看起来像是改变了其类。 状态模式的实现 通过状态模式来实现一个控制器,有登录和未登录两个状态和点赞、评论、转发三个功能...
概述 关于网络的基础知识,请自行google,这里通过socket(udp)来实现一个简单的对话。 Udp协议的Socket 服务端五步走:1.初始化DatagramSock...
概述 关于网络的基础知识,请自行google,这里通过socket(tcp)来实现一个简单的对话。 Tcp协议的Socket 服务端四步走:1.创建服务端socket并绑定端...
概述 封装一个支持Java Bean,Java List,Java Map的SharedPreference。(2018.8.15更新) 实现 思路就是通过代理模式来实现对S...
概述 关于java异常的介绍和处理的知识,请自行google。 自定义异常 有时候我们需要一个异常来表示逻辑中的某种异常情况,而java没有定义这种异常的时候,我们就需要自定...
概述 责任链模式在面向对象程式设计里是一种软件设计模式,它包含了一些命令对象和一系列的处理对象。每一个处理对象决定它能处理哪些命令对象,它也知道如何将它不能处理的命令对象传递...
概述 用一个中介者对象封装一系列的对象交互,中介者使各对象不需要显示地相互作用,从而使耦合松散,而且可以独立地改变它们之间的交互。 实现一个中介者模式 我们来实现生活中一个常...
概述 将一个类的接口转接成用户所期待的。一个适配使得因接口不兼容而不能在一起工作的类工作在一起,做法是将类自己的接口包裹在一个已存在的类中。 适配器模式的实现 jdk中Vec...
一句话概述 所谓的代理者是指一个类别可以作为其它东西的接口。代理者可以作任何东西的接口:网络连接、内存中的大对象、文件或其它昂贵或无法复制的资源。 实现一个代理模式 我们来实...
一句话概述 观察者模式是软件设计模式的一种。在此种模式中,一个目标对象管理所有相依于它的观察者对象,并且在它本身的状态改变时主动发出通知。这通常透过呼叫各观察者所提供的方法来...
一句话概述 策略模式作为一种软件设计模式,指对象有某个行为,但是在不同的场景中,该行为有不同的实现算法。比如每个人都要“交个人所得税”,但是“在美国交个人所得税”和“在中国交...
@zhangxiao sInstance是私有静态常量
单例模式一句话概述 单例模式,也叫单子模式,是一种常用的软件设计模式。 在应用这个模式时,单例对象的类必须保证只有一个实例存在。 许多时候整个系统只需要拥有一个的全局对象,这样有利于...
@MyBatis大法 sInstance是私有静态变量,存在于私有的静态内部类,只在第一次被引用的时候初始化,不能改变指向的对象,也就没有你说的可见性和安全性问题
单例模式一句话概述 单例模式,也叫单子模式,是一种常用的软件设计模式。 在应用这个模式时,单例对象的类必须保证只有一个实例存在。 许多时候整个系统只需要拥有一个的全局对象,这样有利于...
@MyBatis大法 sInstance是静态变量,多线程下也是没问题的。
单例模式一句话概述 单例模式,也叫单子模式,是一种常用的软件设计模式。 在应用这个模式时,单例对象的类必须保证只有一个实例存在。 许多时候整个系统只需要拥有一个的全局对象,这样有利于...