目录
不同版本的 Spring Framework 有哪些主要功能?
你可以在 Spring 中注入一个 null 和一个空字符串吗?
JVM内存为什么要分成新生代,老年代,持久代。新生代中为什么 要分为Eden和Survivor?
你知道哪几种垃圾收集器,各自的优缺点,重点讲下cms和G1,包 括原理,流程,优缺点:
JVM内存模型的相关知识了解多少,比如重排序,内存屏障,happen-before,主内存,工作内存:
为什么不能把服务器发送的ACK和FIN合并起来,变成三次挥手(CLOSE_WAIT状态意义是什 么)?
什么是ARP协议 (Address Resolution Protocol)?
前言
说实话,我只能隐约想起并发、JVM、分布式、TCP/IP协议这些个关键字,具体的问题真的是几乎都没记住。而且就算我记住了,也告诉你了,你也背会了,但我觉得,在面试中,你被问到一模一样问题的可能性依然很小。
甚至,就算你运气好被问到了,你也照着背下来了,也不一定就能对你的面试起到正面的作用,因为面试官万一多问一句,你可能就露馅了,那还不如干脆点说不会更好。
对于能有3-5年经验的这部分人中,每个人的经历又都不同,所擅长的点也不一样,因此这就会导致每个人的问题和范围都不太一样。
很少说有哪个知名的互联网公司,比如BAT、京东、360、搜狐、网易等这些公司,其社招面试还有固定的问题和模式,让你可以像应届生面试一样,在面试前靠临时抱佛脚度过这一关。
大部分公司在社招的时候,不光是阿里,其它公司也都一样(因为我在一年多前也参加过很多其它知名互联网公司的面试,基本上都分为两个阶段的提问。
-
第一个阶段是主语言本身以及它的高级特性。
-
第二个阶段是讲述自己的项目,并在中间穿插着问题。
接下来小编分享一些精选的面试题供大家参考参考
面试常问spring
还在机械地打代码?只知道如何使用,却不知道做了什么,那么你注定只能是一个码农。Spring 框架几乎集成一半 Javaweb 开发的江山,但是你只知道如何写,不知道为什么要这么写,也不知道要如何优化。小编下面整理了一些spring面试相关的面试你,你可以收藏好好看看能不能都答出来!
-
不同版本的 Spring Framework 有哪些主要功能?
-
Spring Framework 有哪些不同的功能?
-
什么是 Spring 配置文件?
-
使用 Spring 有哪些方式?
-
可以通过多少种方式完成依赖注入?
-
spring bean 容器的生命周期是什么样的?
-
什么是 spring 装配
-
自动装配有什么局限?
-
spring DAO 有什么用?
-
列举 spring 支持的事务管理类型
-
描述一下 DispatcherServlet 的工作流程
-
解释不同方式的自动装配
-
你可以在 Spring 中注入一个 null 和一个空字符串吗?
-
在 Spring 框架中如何更有效地使用 JDBC?
-
在 Spring 框架中如何更有效地使用 JDBC?
上述面试题已经整理成文档,有需要的可以 点击进入 查看领取资料。
JVM常见面试题集锦
相信越来越多的同学在面试中都会被问过有没有 JVM 调优的问题,随着 IT人员越来越多,面试也越来越难,JVM 的知识无疑是难点之一,如果能够回答上相关问题,肯定能大大提高面试的通过率。不少同学肯定也看过 JVM 相关的文章、书籍,但是在实际工作中可能不会触碰到这一块,所以小编也会结合一些常见的面试题来给大家分析和总结。
-
什么情况下会发生栈内存溢出。
思路: 描述栈定义,再描述为什么会溢出,再说明一下相关配置参数, OK 的话可以给面试官手写是一 个栈溢出的demo 。
-
JVM内存为什么要分成新生代,老年代,持久代。新生代中为什么 要分为Eden和Survivor?
思路: 先讲一下 JAVA 堆,新生代的划分,再谈谈它们之间的转化,相互之间一些参数的配置(如: –XX:NewRatio , –XX:SurvivorRatio 等),再解释为什么要这样划分,最好加一点自己的理解。
-
你知道哪几种垃圾收集器,各自的优缺点,重点讲下cms和G1,包 括原理,流程,优缺点:
-
JVM内存模型的相关知识了解多少,比如重排序,内存屏障,happen-before,主内存,工作内存:
-
简单说说你了解的类加载器,可以打破双亲委派么,怎么打破:
-
怎么打出线程栈信息:
-
强引用、软引用、弱引用、虚引用的区别?
多线程面试题集锦
Java 中 I/O 是以流为基础进行数据的输入输出的,所有数据被串行化 ( 所谓串行化就是数据要按顺序进行输入输出) 写入输出流。简单来说就是 java 通过 io 流方式和外部设备进行交互。 在Java 类库中, IO 部分的内容是很庞大的,因为它涉及的领域很广泛:标准输入输出,文件的操作,网络上的数据传输流 ,字符串流,对象流等
-
在了解不同的IO之前先了解:同步与异步,阻塞与非阻塞的区别
-
什么是BIO?
-
什么是AIO ?
-
什什么Netty?
-
BIO和NIO、AIO的区别?
-
什么是比特(Bit),什么是字节(Byte),什么是字符(Char),它们长度是多少,各有什 么区别?在实现序列化接口是时候一般要生成一个serialVersionUID字段,它叫做什么,一般有什么用?
-
什么是内核空间?
-
Java中流类的超类主要有那些?
-
为什么图片、视频、音乐、文件等 都是要字节流来读取?
-
BIO编程会出现什么问题?
-
多线程解决BIO编程会出现的问题?
网络编程面试题
-
什么是网络编程?
-
网络协议是什么?
-
为什么要对网络协议分层 ?
-
建立连接可以两次握手吗?为什么?
-
如果已经建立了连接,但客户端出现了故障怎么办?
-
为什么不能把服务器发送的ACK和FIN合并起来,变成三次挥手(CLOSE_WAIT状态意义是什 么)?
-
什么是Http协议?
-
什么是http的请求体?
-
一次完整的HTTP请求所经历几个步骤?
-
常用HTTP状态码是怎么分类的,有哪些常见的状态码?
-
cookie和session对于HTTP有什么用?
-
什么是TCP/IP和UDP?
-
TCP和UDP的应用场景:
-
运行在TCP 或UDP的应用层协议分析:
-
什么是ARP协议 (Address Resolution Protocol)?
-
用现实理解三次握手的具体细节 :
来自小编的福利
针对最近很多人都在面试,我这边也整理了相当多的面试专题资料(spring、mybatis、jvm,Zookeeper,分布式等)和 2020最新阿里面试真题,有40多套PDF文档面试题
资料获取方式:关注小编 点我 点我 免费领取 获取上述资料
部分资料图片: