Android面试反思:开发5年crud背景

  • 性能优化、ANR、内存泄漏

  • Activity启动模式、启动流程

  • 四大组件

  • Hanlder机制、事件分发、绘制流程

  • MVP、MVVM、插件化(hook)

  • 跨进程通信、aidl、广播、ContentProvider

  • okhttp、retrofit、glide、eventbus底层原理

Kotlin

  • kotlin反射、kotlin泛型

  • 协成原理 await、async区别

  • lateinit和by lazy区别

很多技术细节,工作中用不太到,但是面试不得不去准备,还是要把基础打牢固,下面就分享一些我梳理的一些Android基础相关知识:

关于一些基础知识的梳理


Java基础:

1.ArrayList、Linkedlist、Vector

2.BlockingQueue、CountDownLatch

3.Collections、Arrays

4.Exception与Error包结构,OOM,SOF的各种情况

5.HashCode作用

6.Java1.7、1.8新特性

7.Java NIO

8.Java基本数据类型以及相关操作

9.Java的四种引用,强弱软虚,用到的场景

10.Map、Set、List、Queue、Stack的特点与用法

11.Map相关子类区别

12.Object共有方法以及wait和sleep区别

13.Override与Overload区别

14.String相关内容学习

15.foreach与for循环效率对比

16.interface与abstract类的区别

17.static关键字

18.synchronized、lock、reentrantLock区别

19.不同清醒下return与finally的执行顺序

20.transient、volatile

21.反射原理及应用

22.反省特点以及类型转换

23.生产者消费者问题的五中实现

24.县城以及ThreadLocal

25.线程池的使用

26.解析XML的DOM与SAX以及PULL区别

27.锁的等级:方法锁、对象锁、类锁

28.面向对象的特征和含义以及多态实现原理

Android:

1.在AS中定义Gradle插件

2.Activity与Fragment生命周期

3.Activity卡顿原因

4.Activity启动过程

5.Activity四种启动模式与IntentFilter匹配规则

6.Activity的状态保存

7.Android5.0、6.0、7.0、8.0、9.0、10.0特性

8.Android内存优化方法

9.Android动画

10.Android文件缓存方法

11.Android长连接,怎么处理心跳机制

12.Asset与raw,res、drawable

13.AsyncTask原理与使用

14.Bitmap相关

15.ContentProvide用法

16.IntentService

17.Json相比XML优劣势,protobuf

18.Looper、Handler、MessageQueue

19.Merge与ViewStub布局标签

20.OkHttp原理解析

21.Service相关

22.Sqlite基本操作

23.UIL原理解析

24.Volley原理解析

25.Zygote进程启动过程

26.启动Activity的集中方式

27.如何保证Service不被kill

28.如何加速启动Activity

29.怎样退出终止App

30.插件化原理

31.注册广播的两种方式

32.热补丁技术概括

33.自定义View(所有View知识)

34.通过自定义Gradle插件修改编译后的class文件

数据结构:

1.各种排序算法复杂度对比

2.排序算法

3.数据结构基本概念及复杂度分析

操作系统:

1.IPC集中通信方式

2.什么是虚拟内存

3.死锁的必要条件,怎么处理死锁

4.段储存、页储存、段页储存

5.虚拟地址、逻辑地址、线性地址、物理地址的区别

6.进程与县城

7.银行家算法

计算机网络:

1.3次握手和4次挥手过程

2.HTTP响应报文格式及各种响应吗

3.HTTP请求报文格式

4.Http1.1和Http1.0区别

5.Http怎么处理长连接

6.IP地址分类

7.OSI与TCP\IP各层的结构与功能

8.Ping的整个过程。ICMP报文是什么

9.TCP与UDP区别以及各自优缺点

10.TCP和UDP数据报文格式

11.TCP拥塞控制和流量控制

12.http与https区别

13.打开一个网页,整个过程使用到哪些协议

14.滑动窗口与回退N针协议

15.路由器与交换机区别

数据库:

1.关系数据库基本概念

2.关系模式的规范化

3.函数依赖与候选码的定义

4.数据库中数据查询

5.数据库查询优化

6.数据的添加、删除、修改

7.表的创建、修改表结构、删除表

JVM:

1.CAS是什么

2.GC收集器有哪些

3.GC的三种收集方法

4.内存模型以及分区

5.判断一个对象是否存活

6.双亲委派模型

7.对象的创建、内存布局、对象的访问定义

8.新生代老年代内存划分比例以及其各自特点

9.类加载的五个过程

10.静态分派和动态分派

面试前系统复习的重要性


很多人在刚接触这个行业的时候或者是在遇到瓶颈期的时候,总会遇到一些问题,比如学了一段时间感觉没有方向感,不知道该从那里入手去学习,对此我针对Android程序员,我这边给大家整理了一套学习宝典

  • Android学习路线图

首先,对于没有学习方向,知识不体系的人,我把我工作几年整理的学习路线分享给大家,做一个借鉴作用,还不知道怎么学习的人可以直接照着我这个学习路线一个个的去学习,知识不体系的人可以参考下我整理路线的方式,总之希望能够帮到你们!

  • 模块化学习资源

接下来是每个模块我整理出来的文档学习资料,帮助大家更细致化的学习。

《Android汇总复习资料—Java》

《Android汇总复习资料—Android》

《Android汇总复习资料—Android扩展》

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数Android工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年Android移动开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
img
img
img
img
img
img
img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Android开发知识点,真正体系化!

由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新

如果你觉得这些内容对你有帮助,可以添加V获取:vip204888 (备注Android)
img

文末

面试:如果不准备充分的面试,完全是浪费时间,更是对自己的不负责!

不管怎么样,不论是什么样的大小面试,要想不被面试官虐的不要不要的,只有刷爆面试题题做好全面的准备,当然除了这个还需要在平时把自己的基础打扎实,这样不论面试官怎么样一个知识点里往死里凿,你也能应付如流啊

上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Android开发知识点,真正体系化!**

由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新

如果你觉得这些内容对你有帮助,可以添加V获取:vip204888 (备注Android)
[外链图片转存中…(img-M7NZ2Sy5-1711865188632)]

文末

面试:如果不准备充分的面试,完全是浪费时间,更是对自己的不负责!

不管怎么样,不论是什么样的大小面试,要想不被面试官虐的不要不要的,只有刷爆面试题题做好全面的准备,当然除了这个还需要在平时把自己的基础打扎实,这样不论面试官怎么样一个知识点里往死里凿,你也能应付如流啊

本文已被CODING开源项目:《Android学习笔记总结+移动架构视频+大厂面试真题+项目实战源码》收录

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值