
面试
面试总结
吴唐人
AAAAAA coder
展开
-
Android-如何避免以及定位内存泄漏?
目录非静态内部类的静态实例Handler使用不当导致内存泄露Context使用不当导致内存泄露资源对象未关闭(输入输出流、Cursor等)静态View导致泄露WebViewBitmap监听器未关闭非静态内部类的静态实例非静态内部类会持有外部类的引用,如果非静态内部类的实例也是静态的,就会长期持有外部类的引用,无法被系统回收,解决办法:使用静态内部类Handler使用不当导致内存泄露Handler导致的内存泄露基本上也是由于非静态内部类导致的,Handler内部message是被存储在MessageQ原创 2020-07-15 10:42:28 · 391 阅读 · 0 评论 -
Android-Service里面如何启动Activity?为什么要这么做?
目录1. 一个应用中有多少个Context,它们之间的区别是什么?2. Service/广播中是否可以启动Activity?为什么?1. 一个应用中有多少个Context,它们之间的区别是什么?Context数量=Activity数量+Service数量+Application从图中我们知道:Context其实是一个抽象类,它有两个子类:ContextImpl、ContextWrapper,ContextImpl是context的功能具体实现类,而ContextWrapper则是一个包装类,主要原创 2020-07-15 10:38:07 · 7211 阅读 · 0 评论 -
2020-Android-面试总结(1)
目录Java部分1. [数组与链表](https://blog.youkuaiyun.com/wu996489865/article/details/107325094)2. 设计模式1. [单例模式](https://blog.youkuaiyun.com/wu996489865/article/details/107325511)2. 建造者模式(Builder)3. 适配器模式4. 装饰模式5. 策略模式6. 观察者模式7. 状态模式8. 工厂(方法)模式3. sleep、wait、join区别4. 多线程同步、synchr原创 2020-07-14 18:09:55 · 344 阅读 · 0 评论 -
Java-反射、注解、注解处理器
目录1. 反射1. 对象获取的方法2. 常用API2. 注解3. 注解处理器1. 反射Java反射机制是在运行状态中对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,能够调用它的任意方法和属性,从对象出发,通过反射(Class类)可以取得类的完整信息。简单说就是在运行过程中获得类、对象、方法的所有信息1. 对象获取的方法通过对象获取obj.getClass()通过完整类路径获取Class.fromName("com.java.String")通过类名获取Object.clas原创 2020-07-14 17:08:39 · 295 阅读 · 0 评论 -
sleep、wait、join区别
目录线程的生命周期sleep、wait、join区别1. Thread.sleep()2. Object.wait()3. Thread.join()线程的生命周期线程状态含义说明NEW新建还未调用start方法,还是活着的aliveRUNNABLE准备就绪调用了start方法,此时线程已经准备好,处于就绪队队列中,aliveRUNING运行中线程获得CPU资源,正在执行alive(其实不是真实存在这个状态)BLOCKED阻塞线程阻塞与锁或者调用了原创 2020-07-14 11:53:16 · 1441 阅读 · 0 评论 -
java-设计模式-单例模式
目录1. 六大设计原则2. 什么是单例模式?3. 单例模式的特点?4. 单例模式VS静态类5. 单例模式的几种实现方式1. 懒汉式2. 饿汉式3. DCL(double-check-locking)双检锁6. DCL原理7. 多进程中单例为什么会失效?1. 六大设计原则一句话总结个原则特点单一职责原则 :一个类只负责一项职责里式替换原则:所有应用父类的地方都能够使用子类替代,子类可进行功能扩展而不是重写、覆盖父类方法依赖倒置原则:高层模块不应该依赖低层模块,二者都应该依赖抽象,抽象不应该依赖细节原创 2020-07-13 22:19:31 · 148 阅读 · 0 评论 -
Java-数组与链表
目录1. 链表与数组的主要区别2. 数组的特点3. 链表的特点4. 各自优缺点数组优点缺点链表优点缺点1. 链表与数组的主要区别数组的元素是固定的而链表的结点个数会自动扩展数组元素的存储单元是定义时分配的,链表结点存储单元在执行时可动态扩展数组中元素的顺序关系由元素在数组的下标决定的,链表结点顺序关系由结点的指针决定的2. 数组的特点在内存中数组是一块连续的区域数组需要预留控件,在使用时就必须申请内存,申请过大会造成内存浪费插入和删除效率低,插入数据时后面的数据都要向后面移动,因为数组原创 2020-07-13 21:14:08 · 382 阅读 · 0 评论