2018年最新Android面试分享

作者: aa457e711aa4 | 来源:发表于2018-06-01 15:03 被阅读288次

    *版权声明:本文为博主原创文章,未经博主允许不得转载。 

    *原文链接:https://www.jianshu.com/p/7d3963974fbb


    楼主13毕业,一直在六朝古都。学渣一枚,代码一般。从学习资源匮乏年代走到现在,感慨很多~

    见识了很多拥抱开源,乐于分享的大神、发自内心的佩服你们,感谢你们。

    在现东家4年了,成长了很多。生于忧患死于安乐,最近总感觉要失业了~决定拿起锄头试水Android市场(原来写Java)。

    都说互联网烧钱的时代已经过去了,剩下的都是某某系了。岗位竞争变成都只招专家了,楼主亲测了一把,面试了几家公司—结论:没有核心竞争力,offer不容易。好点的去不了,一般的不想去~

    总结了遇到的面试题。网上可能也有,但实战细节汇总一下:


    1.APP体系图谱-引用 2.APP优化图谱-引用

    前言:

    基本都来源Android上面2个图谱。专注技术的,可以定个学习计划,深入浅出。


    1.F4基础-Activity:

    (1.1)Activity的4种启动模式,区别,回调

    https://www.jianshu.com/p/4c8d6e2117ac

    (1.2)Activity代码设置启动模式,

    https://www.jianshu.com/p/4c8d6e2117ac

    (1.3)Activity几种退出方式,

    https://blog.csdn.net/a15286856575/article/details/50883807

    (1.4)Activity是否可以配置独立进程,是否可以修改进程名,

    https://blog.csdn.net/Simon_Crystin/article/details/70315106

    (1.5)两个Activity之间跳转时必然会执行的是哪几个方法?

    https://blog.csdn.net/m_xiaoer/article/details/72881082

    (1.6)保存Activity状态

    https://blog.csdn.net/timejay/article/details/52838221

    2.F4基础-Service:

    (2.1)Service与IntentService的区别与使用场景,

    https://www.jianshu.com/p/332b6daf91f0

    (2.2)Service两种启动|关闭方式,

    https://blog.csdn.net/imxiangzi/article/details/76039978

    (2.3)Activity与Service 通信方式,

    https://www.jianshu.com/p/cd69f208f395

    (2.4)Service默认运行的线程,是否可以配置隔离进程,是否可以修改进程名,

    https://blog.csdn.net/Simon_Crystin/article/details/70315106

    3.F4基础-Broadcast:

    (3.1)Broadcast几种类型,

    https://blog.csdn.net/carson_ho/article/details/53160580

    (3.2)Broadcast拦截,

    https://blog.csdn.net/dream19861009/article/details/6361553

    (3.3)Broadcast运行的线程,

    https://blog.csdn.net/anzhu_111/article/details/6662369

    (3.4)Broadcast动态和静态的区别,

    https://blog.csdn.net/u012925008/article/details/49701423

    (3.5)Broadcast动态和静态的优先级、为什么,

    https://blog.csdn.net/qq_35823924/article/details/52159351

    4.View相关:

    (4.1)view事件传递分发机制,

    https://www.jianshu.com/p/38015afcdb58

    (4.2)view绘制过程,

    https://www.jianshu.com/p/5a71014e7b1b

    (4.3)view过渡渲染优化,

    https://blog.csdn.net/wl9739/article/details/57416433

    (4.4)LinearLayout和RelativeLayout的绘制区别,性能差异对比,

    https://blog.csdn.net/su_1106941640/article/details/53026208

    5.Animation相关:

    (5.1)动画的分类,

    https://www.jianshu.com/p/420629118c10

    (5.2)属性动画使用,自定义插值器和估值器,举例说明,

    https://www.jianshu.com/p/420629118c10

    6.网络通信:

    (6.1)http与https的区别,

    https://blog.csdn.net/bryant_liu24/article/details/56488603

    (6.2)Tcp和Udp的区别,

    https://blog.csdn.net/li_ning_/article/details/52117463

    (6.3)socket是什么?

    https://www.cnblogs.com/wangcq/p/3520400.html

    (6.4)简述3次握手和4次挥手,

    https://blog.csdn.net/zixiaomuwu/article/details/60965466

    7.通信相关:

    (7.1)为什么需要 Handler?Handler 原理

    https://www.jianshu.com/p/9e4d1fab0f36

    (7.2)进程间通信AIDL,

    https://www.jianshu.com/p/beaf4d595cf6

    (7.3)广播,

    同上

    (7.4)Messenger

    https://blog.csdn.net/u011240877/article/details/72836178

    8.进程|线程相关:

    (8.1)线程和进程在操作系统是什么,

    进程:操作系统分配的独立内存空间,执行一系列CPU指令集。

    线程:是进程的一个实体,是CPU调度和分派的基本单位,它是比进程更小的能独立运行的基本单位。

    (8.2)sleep()和wait()的区别,

    https://blog.csdn.net/xyh269/article/details/52613507

    (8.3)线程同步、安全方式,

    https://www.cnblogs.com/lizhangyong/p/8029287.html

    (8.4)线程池理解,

    https://blog.csdn.net/ymrfzr/article/details/51479816

    (8.4)JAVA 锁有几种,

    https://www.cnblogs.com/lxmyhappy/p/7380073.html

    9.三级缓存:

    (9.1)内存缓存\本地缓存\网络缓存

    https://www.jianshu.com/p/97455f080065

    (9.2)LRUCache,用来做什么?原理是什么? 

    https://www.jianshu.com/p/b49a111147ee

    10.设计模式:

    (10.1)单例,工厂,观察者,代理等

    https://www.cnblogs.com/malihe/p/6891920.html

    (10.2)Android源码用到了哪些设计模式

    https://www.jianshu.com/p/a436c15d1de2

    (10.2)MVP框架、 MVVM框架

    https://blog.csdn.net/limonzet/article/details/53328315

    https://blog.csdn.net/wlcm603/article/details/78182868

    11.性能优化:

    (11.1)ANR产生的原因是什么?

    https://www.jianshu.com/p/7fd95bc2a55c

    (11.2)内存泄露和OOM的分别是什么,有什么区别?

    https://www.jianshu.com/p/7fd95bc2a55c

    https://www.jianshu.com/p/eef57e3ace13

    (11.3)APP各种优化系列,都要稍微了解一点https://blog.csdn.net/u010853225/article/details/79724938

    12.其他:

    (12.1)讲解一下Context

    https://blog.csdn.net/wzy_1988/article/details/51539503

    (12.2)ThreadLocal原理,实现及如何保证Local属性

    https://blog.csdn.net/singwhatiwanna/article/details/48350919

    (12.3)JNI

    https://www.jianshu.com/p/fa613762f516

    (12.4)Opengl\渲染管线(初学太好理解)

    https://blog.csdn.net/cjneo/article/details/50538033

    (12.5)多媒体播放、解码

    https://www.jianshu.com/p/f6ac01c3f994

    (12.6)JVM、DVM(Dalvik VM)和ART虚拟机对比

    https://blog.csdn.net/evan_man/article/details/52414390

    (12.7)JDK1.8新特性?

    https://blog.csdn.net/haiyoung/article/details/52693212

    13.JAVA基础:

    (13.1)集合种类

    https://www.cnblogs.com/leeplogs/p/5891861.html

    (13.2)String|StringBuffer|StringBuilder区别

    https://blog.csdn.net/qq_30278639/article/details/51362754

    (13.3)几种内部类的实现方式,优化,内存泄露风险

    https://blog.csdn.net/nysyxxg/article/details/10133141

    https://blog.csdn.net/qq_22706515/article/details/51321718

    (13.4)抽象类和接口区别

    https://www.cnblogs.com/dolphin0520/p/3811437.html

    (13.5)java反射理解

    https://blog.csdn.net/the_fire/article/details/6020402

    (13.6)java注解理解

    https://blog.csdn.net/javazejian/article/details/71860633

    (13.6)java依赖注入理解

    https://www.cnblogs.com/qiangweikang/p/4865486.html

    14.开源框架:

    很多,比如Rx全家桶,写自己用过。没用过的,就说大概了解~

    15.常见算法(了解一下):

    (15.1)数据结构部分

    栈 Stack

    队列 Queue

    链表 Linked List

    数组 Array

    哈希表 Hash Table

    二叉树 Binary Tree 

    堆 Heap

    并查集 Union Find

    字典树 Trie

    (15.2)算法部分

    快速排序算法

    最排序算法

    归并排序

    二分查找算法

    BFPRT(线性查找算法)

    DFS(深度优化算法)

    BFS(过度优化搜索)

    Dijkstra算法

    动态规划算法


    结语

    1.面试不要迟到,不要放鸽子,即使有特殊情况,也要合理沟通。最起码的尊重,即是对自己也是对他人。

    2.面试前,问清HR是否需要带什么(简历,笔等)

    3.面试内容没法固化,每家问的都不一样,随机性很强,但基础的容易忽略的知识,往往占一半。

    4.面试稍微准备个几天,做个复习。一定要夯实基础,注意细节,专注技术,强化业务。


    希望大家都能获得上帝的眷顾,都获得心水的offer,谢谢。



    相关文章

      网友评论

        本文标题:2018年最新Android面试分享

        本文链接:https://www.haomeiwen.com/subject/hcqksftx.html