摘要:
模板方法模式详解: 概念模板方法是通过定义一个算法骨架,而将算法中的步骤延迟到子类,这样子类就可以复写这些步骤的实现来实现特定的算法。 使用场景1、多个子类有公有的方法,并且逻辑基本相同时。2、重复,复杂的算法,可以把核心算法设计为模板方法。3、重构时,模板方法模式是一个经常使用的模式。 UML结构 阅读全文
摘要:
adapter模式详解: 适配器模式定义将一个接口转换成客户端希望的另一个接口,适配器模式使接口不兼容的那些类可以一起工作,其别名为包装器(Wrapper)。 类适配器①、类适配器定义:类适配器模式把适配的类的API转换成目标类的API。②、UML结构图解析:③、code详解:先定义Target接口 阅读全文
摘要:
java的builder模式详解: 概念:建造者模式是较为复杂的创建型模式,它将客户端与多含多个组成部分(或部件)的复杂对象的创建过程分离。 使用场景:当构造一个对象需要很多参数的时候,并且参数的个数或者类型不固定的时候。 UML结构图分析:下面具体介绍一下角色:Builder:它为创建一个产品Pr 阅读全文
摘要:
单例的介绍: 单例的概念:单例模式是一种对象创建模式,它用于产生一个对象的具体实例,它可以确保系统中一个类只产生一个实例。 好处:1、对于频繁使用的对象,可以省略创建对象所花费的时间,这对于那些重量级对象而言,是非常可观的一笔系统开销。2、由于new操作的次数减少,因而对系统内存的使用频率也会降低, 阅读全文
摘要:
什么是ListView: ListView就是一个能数据集合以动态滚动的方式显示在用户界面上的View。 ListView适配器模式: 有了Adapter可以将数据源与view进行分离~ ListView的recycleBin机制: 对于列表可能会有成千上万条数据,那ListView是如何可以做到不 阅读全文
摘要:
为什么会有事件分发机制: 安卓上面的View是树形结构的,View可能会重叠在一起,当我们点击的地方有多个View都可以响应的时候,这个点击事件应该给谁呢?为了解决这一问题,就有了事件分发机制。用图来说明: 如图,当点击View1时,其它下面的ViewGroupA和RootView也是能响应的,为了 阅读全文
摘要:
Linux内核的基础知识: 进程隔离/虚拟地址空间:在操作系统中为了保护某个进程互不干扰就设计了一个叫“进程隔离”的技术,防止进程A可以操作进程B的数据。而进程隔离技术用到了虚拟地址空间,进程A的虚拟地址空间跟进程B的虚拟地址空间其实是不同的,而如果进程与进程之间要进行通知则需要某种通信机制才能完成 阅读全文
摘要:
Android不用静态变量存储数据: 静态变量等数据由于进程已经被杀死而被初始化。在Android中应用进程不是安全的,因为它会有系统给kill掉,但是在实际中可能会有这样的一个假象:当app被杀掉之后会重新再开的,其实这个再打开是重新创建了一个进程,启动上一次打开的Activity,由于此时的静态 阅读全文
摘要:
什么是冷启动: 冷启动的定义:冷启动就是在启动应用前,系统中没有该应用的任何进程信息。实际也就是要执行Application.onCreate()方法的那次启动。 冷启动 / 热启动的区别:热启动:用户使用返回键退出应用,然后马上又重新启动应用。实际上也就是Application.onCreate( 阅读全文
摘要:
内存管理机制概述: 分配机制:操作系统会为每一个进程分配一个合理的内存大小,从而保证每一个进程能够正常的运行,不至于内存不够使用,或者某个进程占用过多的内存。 回收机制:在系统内存不足的时候,系统有一个合理再分配资源的一个机制,从而保证新的进程能够正常运行,回收的时候就要杀死那些正在占用内存的进程, 阅读全文