2020校招开发岗面试题总结(Java后台开发)_java开发面试校招-程序员宅基地

技术标签: java  

1、计算机网络
TCP三次握手过程、参数;
TCP四次挥手过程、参数;
TCP和UDP的区别?应用场景有何不同?
TCP阻塞控制;
OSI七层模型、各层所用到的协议;
一些常见协议的原理:ARP、ICMP、FTP等(TCP UDP更不用说啦,一定要了解)
2、数据库知识
数据库有哪些索引?原理是什么?
索引有什么作用?有什么特点
索引为什么用B+树?
B+树和B-树有什么区别?
mysql中MyISAM和InnoDB的区别?
事务的四大特性(常考)
数据库优化的一些策略;
增删改查要熟悉,随时可能提一个需求让你写一个SQL语句;
数据库索引:聚集索引和非聚集索引的区别?
3、编程语言基础(以Java为例)
面向对象的特性?(封装继承多态)如何体现出来?
重载和重写有什么区别?
集合类有哪些?(常考)
Set和List的区别;
ArrayList、Linkedlist、Vector区别?(常考,建议看下底层实现代码)
ArrayList如何扩容?(常考)
Map下Hashmap、TreeMap的区别?
TreeMap底层是什么?红黑树还是二叉树?
Map、List下哪些类是线程安全的?(常考)
Hashmap的扩容机制;
Hashmap如何解决哈希冲突?与HashTable有何不同?
正则表达式;(服务端岗位常考)
接口跟抽象类的区别?
Java可以多继承吗?
JVM垃圾回收机制;(常考)
Java中是值传递还是引用传递?
Java中锁机制;
Lock的底层怎么实现的?源码怎么写的?
sychronized的底层实现?
sychronized修饰静态方法和修饰普通方法有什么区别?
异常类有哪些实现类、子类?
多线程中如何保证线程安全?
多线程有哪些常见的线程安全的类?
如何开启一个线程?
get请求和post请求有什么区别?
反射的原理?
ClassLoader和Class.forName()这两个有什么区别?(反射源码的考察)
NIO这一块有什么了解?
4、项目框架(以Spring为例)
简述Springmvc的流程;
Spring的核心特性是什么?
理解AOP、IoC的基本原理;
AOP的一些场景应用;
Springmvc和Springboot有什么区别?
Springboot为什么配置简单?(即它自动做了什么操作才能简化程序员的操作)
Spring容器的加载顺序?
@Resource 和 @Autowired 区别?分别用在什么场景?
静态代理和动态代理的区别?
Hibernate和mybatis的区别?
mybatis是如何工作的?
Hibernate对象有几个状态值?
  这是之前在面试过程中经常会问到的一些问题,我汇总贴在上面,后面也会不定时地进行更新,希望能帮到大家,祝愿大家都能找到一份满意的工作!

一些推荐的小Tips:

JVM推荐的书籍:周志明的《深入了解Java虚拟机》,我觉得讲得比较明白比较细,我就看了前一部分已经完全够应付所有的面试问到的JVM问题了;
Spring书籍:《Spring源码深度解析》,我个人觉得不是很好啃下来,可能需要一些Spring项目开发经验的会好理解一些,硬啃的话很多地方可能看不太懂,建议更多地与实践相结合;
Java并发:《Java并发编程实战》,我觉得这一本讲得也很好,也建议反复地看反复消化,对于面试问到的一些底层原理讲解得很清楚;
数据库:《高性能MySQL》,很厚,慢慢看吧。其实数据库的话,更多问到的是索引机制这一块,还有性能调优之类等,问的方向比较固定。
算法及代码:建议牛客网或者LeeCode,我面试的时候坚持一天一道题,只要消化理解了,其实进步还是特别大的,特别是思路上的提高真的很快。
————————————————
版权声明:本文为CSDN博主「小亦小亦_空中接力」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/sv2008337/article/details/82918873

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/qq_39598825/article/details/105723306

智能推荐

手动重启ORACLE_重启oracle服务-程序员宅基地

文章浏览阅读1.3k次。ORACLE重启_重启oracle服务

向前光照和延后光照渲染器问题和原理_延迟光照-程序员宅基地

文章浏览阅读2.9k次。首先光照分为实时光照和烘焙光照,这里讨论的是对动态物体采用的实时光照。1.为何提前光照计算在多光源下需要多个drawcall?因为光照计算主要涉及点光源,聚光灯,平行光,环境光;主要的光照计算是漫反色光照模型:Cd = max( dot(l,n), 0) * Sdiff + Mdiff.镜面反色模型:blinn:Cs = pow( max( dot( normalize( l+v_延迟光照

大学四年借过的书_邹天思图书-程序员宅基地

文章浏览阅读410次。                不知道其中读完的有多少本,不过应该能达到三分之二吧。  条码号题名责任者借阅日期归还日期馆藏地11237938网络安全开发包详解 刘文涛编著2011-05-172011-06_邹天思图书

Python写出一个字节,一个YouTube,我用Python怎么了!-程序员宅基地

文章浏览阅读623次。Python 近两年一直霸占编程语言排行榜 TOP10,受欢迎程度有目共睹。其实在企业招聘层面也可以从侧面看出,大中小企业甚至国营企业已经陆续开始使用 Python 开发。国内用 Pyt..._sslerror("bad handshake: syscallerror(10054, \'wsaeconnreset\')")))'))

hive中order by,sort by,distribute by,cluster by作用和用法_hive sort by-程序员宅基地

文章浏览阅读2.3w次,点赞13次,收藏67次。1.order by 和 sort by1.order by hive中的order by 语句和其他的sql方言中定义是一样的,其会对查询结果集执行一个全局排序,这也就是说会有一个所有的数据都通过一个reduce进行处理的过程,对于大数据集,这个过程将消耗很大的时间来执行。2,sort by hive增加了一个可供选择的方式,也就是sort by ,其实会..._hive sort by

史上最全的Gateway断言过滤器-程序员宅基地

文章浏览阅读1.3k次,点赞4次,收藏19次。目录安排上Gateway路由断言器1.After 路由断言 Factory指定日期时间之后2.Before 路由断言 Factory指定日期时间之前3.Between 路由断言 Factory指定日期时间之间4.Cookie 路由断言 Factory指定cookie(正则)5.Header 路由断言 Factory指定请求头(正则)6.Host 路由断言 Factory指定Host7.Method 路由断言 Factory指定请求方式(GET/POST)8.Path 路由断言 Factory指定路径9.Qu

随便推点

Linux——Squid代理服务器_squid 代理linux-程序员宅基地

文章浏览阅读244次。二、安装及运行控制1.编译安装Aquid—prefix=/usr/local/squid:安装目录—sysconfdir=/etc:单独将配置文件修改到其他目录。—enable-linux-netfilter:使用内核过滤。—enable-async-io=值:异步I/O,提升存储性能—enable-default-err-Ianguage=Simplify_Chinese:错误信..._squid 代理linux

2021-04-16 mp4==>wav+txt==>音频段00:00:00-99:99:99_mp4电台频段-程序员宅基地

文章浏览阅读86次。标注自用 适用性不行 顶多作为tools 拆开用~1)json转txt 并提取需要的类temp数据import jsonimport osimport numpy as npdef readjson(): # // 打开json文件,文件路径要自己改 with open("./draft.json", 'r', encoding='utf-8') as f: temp = json.loads(f.read()) # // 获得 中..._mp4电台频段

增强自动化测试的8大技巧_zendata csdn-程序员宅基地

文章浏览阅读419次,点赞2次,收藏2次。自动化测试是应用程序在非常短的时间内执行软件的整个生命周期的过程,使测试软件具有很大的充分性和有效性。在这个程序设计的系统中,测试人员编写一个脚本,并借助合适的软件对软件进行测试。自动化测试背后的基本目标是提高测试效率和提高软件的价值。自动化测试有助于揭示那些未经测试的代码片段。自动化代码覆盖率低会影响产品质量,给测试人员带来不必要的物理检查的压力。自动化测试并不容易,并且需要适当的指导。并不是所有的测试自动化项目都交付了预期的ROI和成功率。其中一个原因可能是没有使用正确的测试实践。许多测试人员没有意_zendata csdn

从源代码剖析modelDriven拦截器和params拦截器和拦截器prepare 和paramsPrepareParamsStack拦截器栈(使您的Struts2代码更加简洁——怎样培养框架设计能力_model drive app url param-程序员宅基地

文章浏览阅读2.2k次。源代码文件出处:Web App Libraries/struts2-core-2.3.15.3.jar/struts-default.xml拦截器modelDriven:interceptorname="modelDriven"class="com.opensymphony.xwork2.interceptor.ModelDrivenInterceptor"/>_model drive app url param

rhel修改hostname_redhat7 修改hostname-程序员宅基地

文章浏览阅读237次。修改linux redhat的 hostname 其实有好一些陷阱。。通常 我们修改 /etc/sysconfig/network 的 HOSTNAME 变量即可但是它不会立即生效, 需要执行下面的sysctl kernel.hostname=lk0但是, 到了redhat7 , 这招都不适用了! —— 重启后 hostname 又恢复到之前的了!!从http://www.2cto.com/os/..._rhel 7设置hostname

Android频道管理集成_android 频道管理如何实现-程序员宅基地

文章浏览阅读4.3k次,点赞3次,收藏16次。前言最近开发的项目中有类似网易新闻的频道管理,在完成项目后,我将频道管理单独抽取成Library,方便以后开发,也把总结到的一点知识分享出来。先看看,我的频道管理有什么特点吧。特点1.支持固定频道,支持排序,删除。删除,添加皆有动画效果。 2.在排序完成后,通过刷新Adapter而不是重新创建Adapter,性能更好,没有卡顿。 3.使用简单方便,Library中已经封装了数据库操作,获_android 频道管理如何实现