一般需要包含以下内容:
个人基本信息获过的奖状主要技能所修课程项目经历实习经历自我评价如果没有实习经历可以不写,项目经历根据自己的情况写,也可以不写,但最好是要有个自己的项目(最好有亮点),后面面试问完基础一定会问项目的,如果没项目很有可能后面面试跟面试官就没得聊了,那么面试成功的概率会降低,当然不排除能力特别好的同学,总得来说有项目是好的。
一般形式 : 选择+编程、问答
Java 必考
jvm 通常都会考2-3题选择或1-2题问答
数据结构与算法 必考
计算机网络 一般会涉及2-3题选择题
操作系统 一般会涉及2-3题选择题
数据库 一般会涉及2-3题选择题
linux 一般会涉及2-3题选择题
设计模式 笔试考的相对较少
还有软件工程,编译原理之类考的比较少,但也有公司会考
还有就是会根据岗位涉及不同的方向题(比如:java后台开发,android开发 会涉及几题简单的选择)
编程/问答 必考 编程主要考算法,问答就不一定了(根据岗位而定)
关于笔试涉及的内容还是很多,所以要做好准备,可以把书上的内容复习一遍,配合去牛客网上刷题,会有很大的提升。
重点说三遍:算法很重要,算法很重要,算法很重要 编程题一题分数一般20分左右,所以一定要多练练算法题。
这里我整理了一些大厂面试经典高频的算法题,需要的可以到文章直接去领取!(需要的领取!不需要的可以跳过,谢谢支持文章)
只写还记得的!
一面:
Java四大特征多态的原理jvm垃圾回收算法线程与进程的区别进程间通信ArrayList与LinkedList的区别Java线程间怎么实现同步,notify()与notifyAll()的区别什么是函数重载,原理是什么?http 的工作原理tcp 三次握手线程的调度状态图手写冒泡手写单例包括多线程下二面(群面:挂) 讲项目
面试体验很差,面试官感觉什么都没准备看我的简历然后就看我写的专业技能就开问了,全程没表情,,,。
android 切换屏生命周期的改变知道有几种排序?说说堆排序原理?这题真的会被气死,我都把堆排序怎么实现,为什么这样可以实现排序,都推了一遍,他说了句你说的只是实现,不是原理。。。表示很无奈,难道算法是靠背的?说说你对索引的理解设计模式分哪3大块,说说行为形的其中一个讲项目面试体验实在太差,还有几题吧,也想不起来了,面完我就觉得没戏了
不得不说美团的面试官还有面试流程都超赞的。
自我介绍
线程与进程的区别进程间的通信方式什么是同步进程间可以通过什么方法实现同步说说死锁是怎么产生的那么怎么避免和解决死锁tcp与udp的区别udp怎么实现可靠传输接着对我上面回答继续问,什么是流量控制,什么是拥塞控制对http有什么了解(我讲了http工作原理)接上题TCP的三次握手是什么,为什么不用两次对https有什么了解数据索引的原理是什么有没什么方法可以优化数据的查询数据库事务四大特征数据库事务的隔离级别分别是什么,什么作用进程的调度方式有哪几种接着手写两道算法题: 秒杀
一面主要问基础,那时才发现原来我基础还可以哈,基本都答上来了。还有一面面试官很帅哈哈。
二面面试官特别好,一直微笑,给人特别和蔼的感觉,真是很幸运能遇到这么好的面试官。
先自我介绍
讲了下自己的经历平常怎么学习的,怎么自己自学的androidget跟post的区别https的原理什么是对称加密,什么是非对称加密,知道的加密算法有哪些?android view的绘制原理android 的四大组件,分别是做什么android广播有哪几种LinearLayout与RelativeLayout的区别,什么情况下使用LinearLayout什么情况下使用RelativeLayout怎么实现一个如果布局的层次深度超过50,提示开发者注意布局怎么实现监听手机网络状态的改变说说c++与Java有什么不同接口与抽象有什么不同Java怎么实现多继承上题讲了内部类,就接着问静态内部类与非静态内部类的区别java类的加载机制jvm垃圾回收机制继续讲项目,问了项目中的几点实现 还有的忘记了,二面问了android比较多,自己报的岗位也是android。三面的面试官真的很有耐心,全程听完我讲的框架,为自己感到幸运。
谈谈自己未来的发展方向平时怎么学习的对工作地点有什么要求老家在哪开始切入正题
做过的项目遇到过什么困难开始讲自己写的框架(这个讲了很久)内存泄漏与内存溢出的区别android什么时候回出现内存泄漏有没遇到过OOM,怎么避免OOM常用的集合线程安全的集合有哪些ConcurrentHashMap原理是什么让我多看看源码,学习一下别人写的框架0.期望的工作地点
老家在哪期望的薪资谈谈自己的优缺点未来打算怎么发展如果老板给你一个你一个人无法完成的任务,你会怎么办了解美团吗?手里有没offer,有没实习过 等最终美团Offer get
这些可以复习一遍书上的知识,再结合看面经(后面有整理,需要的自行领取!),很快就很熟悉了
对于要不要有项目这一点不是绝对的,个人觉得最好是有项目,不然面试官基础问完基本上也没什么可问的了。
对于项目自己要挖出自己项目的亮点,面试时可以根据自己的亮点来讲自己的项目.
硬实力就是你目前所拥有的技能与能力,潜实力就是指你的学习能力之类的,在潜实力方面可以多多学习,总结自己学习过程中遇到困难并且是怎么去解决的,简单的讲可以多写写自己总结的技术到博客,或写的框架到github之类。
不管面试过程再怎么样也要保持自己的礼貌,你如见到面试官要说:“你好“,面试完后也要说句“谢谢”,用完笔至少也要把笔盖盖上之类的,一些细节性的东西自己要把握好。
秋招是个艰辛的过程,多少次我失望过,绝望过,但我没有放弃过,坚持自己的信念继续努力,要相信自己的实力与能力,还有不要太着眼于学历,当然学历很重要,真心很重要,但实力更重要,只要能有面试机会就要好好把握住,一般公司会先进行笔试成绩与简历综合来筛选面试,但并不是说明自己没机会面试了,所以能有面试就有机会进,如果真的很想进大公司就不要轻易放弃。在这个求职的过程会很艰辛,自己要做好复习准备与心理准备。
最后想要拿高薪实现技术提升薪水得到质的飞跃。最快捷的方式,就是有人可以带着你一起分析,这样学习起来最为高效,所以为了大家能够顺利进阶中高级、架构师,我特地为大家准备了一套高手学习的源码和框架视频等精品Android架构师教程,保证你学了以后保证薪资上升一个台阶。
当你有了学习线路,学习哪些内容,也知道以后的路怎么走了,理论看多了总要实践的。 以上进阶BATJ大厂学习资料可以免费分享给大家,需要完整版的朋友,点这里可以看到全部内容。
如果需要PDF版本可以在群文件夹里,自行领取!
进阶学习视频
附上:我们之前因为秋招收集的二十套一二线互联网公司Android面试真题 (含BAT、小米、华为、美团、滴滴)和我自己整理Android复习笔记(包含Android基础知识点、Android扩展知识点、Android源码解析、设计模式汇总、Gradle知识点、常见算法题汇总。)