短时间怎样过java面试(14)
1.算法和数据结构这应该是最重要的了,也是准备面试和复习应该关注的大头,楼主是算法渣,所以没什么值得借鉴的宝贵建议,多刷剑指offer和leetcode吧,在牛客网的题库里在线编程就有,硬着头皮刷吧,想不出来就看看讨论区里的思路和实现,看答案不丢脸,理解了就是你自己的。剑指offer应对面试中的手撕代码,leetcode主要应对线上笔试。(链表,二叉树,BST,红黑树,几大排序算法得掌握)2.Java基础知识建议可以看《Java程序员面试宝典》、李刚的《疯狂Java讲义》补一下基础的知识点,未来有时间了可以研读《Effective Java》一些经典书籍。关注HashMap等集合类(HashMap的get方法时间复杂度,为什么是O(1),它的底层实现,让你来手写一下get和put方法,它和HashTable有啥区别,为啥key主要是String和Integer,怎么解决Hash冲突,什么时候扩容等等...),80%的面试都会问HashMap,复习的时候死锤HashMap绝对不亏,另外还要多看看多线程(sleep和wait的区别,线程间通信、怎么避免死锁、怎么开多个线程顺序执行任务。)还要关注一下Java8(J..J8?)的一些新特性,lambda、stream,即使现在JDK11都出了,JDK1.8的新特性还是要了解3.JVM重点关注垃圾回收(什么是垃圾回收,垃圾回收的算法,GC怎么给内存分区的?)、虚拟机内存模型、类加载机制(哪几种classloader?双亲委派模型是什么,为什么要这样做),虽然实际开发中不一定能用到,但面试确实可能会经常问到这几点,推荐《深入理解Java虚拟机》4.数据库基本SQL语句要会写(CRUD,聚合函数、排序分组),乐观锁、悲观锁,数据库事务ACID是什么,数据库优化,常用的存储引擎以及MyISAM和InnoDB的区别以及何时选用,索引原理,关系型数据库从MySQL入手吧,推荐《深入浅出MySQL》,至于非关系型的,学一学Redis,Redis的过期策略、常见的数据结构、持久化策略AOF,RDB等。5.操作系统Linux一些常用的命令...grep,tail,top,lsof,kill,cat之类的,进程间通信的方式(这个一定多关注,被问了三四次了),查看进程的内存怎么看
6.计算机网络HTTP1.1和2.0协议的区别、状态码、TCP连接的过程、TCP和UDP的区别、输入一个网址之后客户端服务端之间发生了什么......推荐《图解HTTP》
7.设计模式单例、工厂是被问的最多的,需重点关注,包括懒汉饿汉双检锁,偶尔可能会问你还了解其他的什么设计模式,可以了解一下另外几种较常见的策略、门面、桥接、观察者模式推荐《大话设计模式》和设计模式的runoob菜鸟教程,可以看得很快8.框架关注一下Spring的IOC、AOP原理,MVC框架的流程,其实框架只是一个封装好的用来方便开发的东西,给不了解的人吹一吹可能看起来很牛x,其实反而是最容易上手的,跟着官方文档写个demo就差不多了,校招最好还是多关注基础,不要死锤框架
9.Git,Maven等一些项目管理工具,还有一些杂七杂八的REST规范等虽然简历里写了,但面了这么多家问的其实不多,只有一家问过git pull 和git fetch的区别,会的话更好,就算不会也没关系,时间少的话还是建议多抓前面几个知识大类恶补
无码不欢:双非本科非科班海投300+家Java后台岗位(个人心得感悟,附赠面试参考资料)
■网友
目前,Java市场连老的程序员(三年及以上)都消化不过来,更何况萌新了,而且又想短时间过面试,我个人觉得很难。。。
你目前唯一能取胜的途径:唯有夯实基础+内推!
我本人已经做关于Java面试题的公众号差不多三年了,期间也面了不少人,包括应届生与社招。就我看来,应届生主要考察你的基础知识与可塑造性,而社招主要考察你知识的广度与深度(基础也是必考哈),说到底,基础很重要,它就像习武之人都必须要扎好马步一样。
这里,我把我公众号19年上半年一些不错的面试题分享给各位同学,自己慢慢去琢磨,就我看来这些文章还是帮了不少人进大厂(有机会一定要进大厂)。
推荐阅读
- 聪明人养花,这3种“花”怎样也要养一盆,每年能省不少医药费
- 互联网怎样解决“家政服务上门速度慢”的问题
- 怎样看待从1月8号起,QQ钱包开始提现收费
- 银行it人怎样转型
- 汽车|冬天怎样让车内温度快速升高?座椅加热的最佳使用方式二,外循环的作用总结
- 怎样进入通信行业
- 怎样评价扶他柠檬茶的小说《云养汉》的结尾
- 怎样成为一名合格的Python程序员?
- 怎样评价华为、诺基亚、中兴中标中国移动高端路由交换设备扩容集采
- 怎样评价类似前橙会、百老汇、南极圈这样类型的离职帮抱团,对企业的积极意义和消极意义
