海盗船|字节内部Java技术岗‘面试真题’泄露,冒死发布!( 七 )


32、什么是JVM字节码执行引擎
33、什么情况下会发生栈内存溢出 。
34、详细的介绍下程序计数器?(重点理解)
35、JVM调优的参数可以在那设置参数值
36、简述java类加载机制?
37、说一下类装载的执行过程?
38、JVM内存模型的相关知识了解多少 , 比如重排序 , 内存屏障 , happen-before , 主内存 , 工作内存 。
39、你知道哪几种垃圾收集器 , 各自的优缺点 , 重点讲下cms和G1 , 包括原理 , 流程 , 优缺点 。
40、类加载的几个过程:
三、Java框架专题面试
I.开源框架
1、Spring IOC 如何实现

  • Spring 中的 org.springframework.beans 包和 org.springframework.context 包构成了Spring 框架 IoC 容器的基础 。
  • BeanFactory 接口提供了一个先进的配置机制 , 使得任何类型的对象的配置成为可能 。 ApplicationContex 接口对 BeanFactory(是一个子接口)进行了扩展 , 在 BeanFactory 的基础上添加了其他功能 , 比如与 Spring 的 AOP 更容易集成 , 也提供了处理 messageresource 的机制(用于国际化)、事件传播以及应用层的特别配置 , 比如针对 Web 应用的WebApplicationContext 。
  • org.springframework.beans.factory.BeanFactory 是 Spring IoC 容器的具体实现 , 用来包装和管理前面提到的各种 bean 。 BeanFactory 接口是 Spring IoC 容器的核心接口 。
2、说说业务中 , Netty 的使用场景
  • 构建高性能、低时延的各种 Java 中间件 , 例如 MQ、分布式服务框架、ESB 消息总线等 , Netty 主要作为基础通信框架提供高性能、低时延的通信服务;
  • 公有或者私有协议栈的基础通信框架 , 例如可以基于 Netty 构建异步、高性能的WebSocket 协议栈;
  • 各领域应用 , 例如大数据、游戏等 , Netty 作为高性能的通信框架用于内部各模块的数据分发、传输和汇总等 , 实现模块之间高性能通信
3、Spring MVC 运行流程
  • 1.spring mvc 将所有的请求都提交给 DispatcherServlet它会委托应用系统的其他模块负责对请求 进行真正的处理工作 。
  • 2.DispatcherServlet 查询一个或多个 HandlerMapping找到处理请求的 Controller.
  • 3.DispatcherServlet 请请求提交到目标 Controller
  • 4.Controller 进行业务逻辑处理后 , 会返回一个 ModelAndView
  • 5.Dispathcher 查询一个或多个 ViewResolver 视图解析器找到 ModelAndView 对象指定的视图对象
  • 6.视图对象负责渲染返回给客户端 。
4、为什么选择 Netty