写点什么

历经一年准备我终于进大厂了!(学习总结 -&-BAT 面试分享

用户头像
Android架构
关注
发布于: 刚刚
  • App 的启动过程。

  • Android 优化方法。

  • 如何防止内存泄漏?

  • Android 中弱引用与软引用的应用场景。

  • Bitmap 的四种属性,如何加载大图(inJustDecodeBounds)。

  • View 与 View Group 分类。自定义 View 过程:onMeasure()、onLayout()、onDraw()。

  • View 刷新机制和绘制流程。

  • Activity、Window、View 的联系和理解。

  • invalidate 和 requestLayout 的区别及使用。

  • Touch 事件分发机制和冲突处理。

  • Android IPC:Binder 原理。

  • Android5.0(UI 库)、6.0(权限)、7.0 特性。


Android 这块比较注重项目经验和平时学习的积累。《Android 开发艺术探索》《深入理解 ANDROID 卷 3》这两本书可以对 Android 有比较全面的认识和理解。

JVM

  • Java 运行时数据区域,导致内存溢出的原因。

  • 对象创建、内存布局,访问定位等。

  • GC 的判定方法。

  • 垃圾收集算法和运作原理。

  • 内存分配与回收策略(Eden,survival from to,老年代)。

  • Class 文件结构(常量池)。

  • 类加载过程。

  • 类加载器(双亲委派模型)。

  • 运行时栈帧结构(主要是局部变量表,理解栈堆)。

  • Java 泛型,自动拆箱,条件编译等多种语法糖。

  • Java 内存模型结构(主内存和工作内存)及操作,原子性可见性和有序性等。

  • Java 线程安全涉及的概念和分类。


《深入理解 Java 虚拟机 第二版》基本涵盖目前市场主流的 jvm 面试问题。

Java 线程

  • volatile 的内存语义和应用。

  • Java 重排序和顺序一致性。(as-if-serial 和 happens-before)

  • 线程的状态和优先级。

  • 启动线程和安全的终止线程。(interrupt)

  • ThreadLocal 的使用

  • Java 中的锁(偏向锁,轻量锁,重量级锁)

  • Java 重入锁 ReentrantLock 和 Condition。

  • Synchronized 和锁的等级(方法锁、对象锁、类锁)。

  • Synchronized 的 wait(sleep 的区别)和 notify 运行过程。

  • CAS 介绍。(compare and swap)

  • Java 中的并发工具(CountDownLatch,CyclicBarrier 等)

  • Java 线程池的使用和原理(模型)。

  • Java 生产者和消费者模型。


关于线程和并发这块方面的知识,我个人还是推荐先阅读《Java 并发编程的艺术》,这本书比较好上手。再通过《Java 高并发程序设计》和《Java 并发编程实战》深入理解。

Java 集合

  • List、Set、Map 的区别

  • ArrayList、LinkedList、Vector 的区别。

  • CopyOnWriteArrayList 的了解。

  • HashMap 和 HashTable 的区别。

  • HashMap 和 ConcurrentHashMap 的区别,HashMap 的底层源码。

  • TreeMap、HashMap、LindedHashMap、ArrayMap 的区别。

  • Collection 包结构,与 Collections 的区别。


Java 集合主要考验对集合的使用和认识,一般都是以 HashMap 下手,问增删改查方法及内部原理。集合这块暂时没有好的书本推荐。只能在网上了解。

网络

  • TCP 与 UDP 的区别。

  • TCP 和 UDP 报文结构。

  • TCP 的三次握手与四次挥手过程。

  • TCP 可靠传输原理实现(滑动窗口)。

  • TCP 拥塞控制。

  • TCP 流量控制。

  • Http 的报文结构。

  • Http 的状态码。

  • Http 的请求方法。

  • Http1.1 和 Http1.0 及 2.0 的区别

  • Http 长连接。

  • Cookie 与 Session 的作用和原理。

  • Https 加密原理。


网络这方面关于 tcp/udp 的可以阅读《计算机网络 第七版》的第五章运


《Android学习笔记总结+最新移动架构视频+大厂安卓面试真题+项目实战源码讲义》
浏览器打开:qq.cn.hn/FTe 免费领取
复制代码


输层部分。Http 推荐《图解 HTTP》

数据结构和算法

目前算法还处于蓝海状态,算法和数据结构是需要日积月累慢慢修炼的内功心法,已经入手《算法 第 4 版》准备慢慢啃。


如果已经有算法基础的同学可以买《剑指 offer》《编程之美》刷刷题。

写在最后

书籍是进步的阶梯。我之所以比较推荐用看书的方法来学习主要的原因是 : 书籍能够比较系统全面的了解某个知识。也就是可以建立知识体系。


『不积跬步无以至千里,机会是留给有准备的人。』



但是技术从来都不只是学习书本,书指明了学习的前进之路,但是想要真正有所进步需要把书中的内容用于大量实战,我也在持续不断学习的道路上奋力奔跑,希望和给为一起持之以恒,最终拿到令我们自己心满意足的 Offer,开发出能真正改变数万人生活的好应用,诸君共勉。


最后为了帮助大家深刻理解 Android 相关知识点的原理以及面试相关知识,这里放上相关的我搜集整理的 24 套腾讯、字节跳动、阿里、百度 2019-2020 面试真题解析,我把技术点整理成了视频和 PDF(实际上比预期多花了不少精力),包知识脉络 + 诸多细节


还有?高级架构技术进阶脑图、Android 开发面试专题资料?帮助大家学习提升进阶,也节省大家在网上搜索资料的时间来学习,也可以分享给身边好友一起学习。





点击:

用户头像

Android架构

关注

还未添加个人签名 2021.10.31 加入

还未添加个人简介

评论

发布
暂无评论
历经一年准备我终于进大厂了!(学习总结-&-BAT面试分享