知识点
Activity生命周期
onCreate()
onStrat()
onResume() <--
onPause()---
onStop() -->onRestart()
onDestroy()
activity 切换横竖屏的生命周期
Activtity的启动模式
standard 启动activity都会产生一个新的Activity 默认模式
singleTop 启动Activity允许多个,但不允许重叠
singleTask 只允许有一个Activity
singleInstance 会建一个新task 里面只能有一个activity
appcation的生命周期
onCreate() APP启动时运行
onTerminate() 程序终止时运行
onLowMemory() 内存低时执行
onTrimMemory() GC时执行
service 生命周期
1. 通过startService启动
onCreate()
onStartCommand()
onDestroy()
2. 通过bindService 启动
onCreate()
onBind()
onStartCommand()
onUnbind()
onDestroy()
内存溢出和内存泄漏
内存溢出是oom,内存泄漏是指没有把一些内存释放
对象序列化
- 目的
- 保存在文件中
- 网络传输
- 在进程间传输
- 方法
- Implements Serializable
- Implements Parcelable
- 原理
- 略
线程间通信
- AsyncTask
- handler
- 管道流pipes
- 内存共享
常用设计模式
- 单例模式 getInstance()
- 懒汉式单例
- 饿汉式单例
- 登记式单例
- 工厂模式 Factory
- 简单工厂模式
- 工厂方法模式
- 抽象工厂模式
- 建造者模式(Builder)
强引用,软引用,弱引用,虚引用
- 强引用
- 直接引用的引用,系统宁愿崩溃,也不会回收
- 软引用
- 只要内存足够就不会去回收
- 弱引用
- 可有可无的东西 随时会回收
- 虚引用
json和xml的区别
view的绘制流程
measure->layout->draw