Java高级工程师面试题及答案_极悦注册
专注Java教育14年 全国咨询/投诉热线:444-1124-454
极悦LOGO图
始于2009,口口相传的Java黄埔军校
首页 学习攻略 Java学习 Java高级工程师面试题及答案

Java高级工程师面试题及答案

更新时间:2020-03-03 11:08:34 来源:极悦 浏览7513次


  1、SpringMVC的原理以及返回数据如何渲染到jsp/html上?


  答:SpringMVC的核心就是DispatcherServlet,一个请求经过DispatcherServlet,转发给HandlerMapping,然后经反射,对应Controller及其里面方法的@RequestMapping地址,最后经ModelAndView和ViewResoler返回给对应视图。


  2、一个类对象属性发生改变时,如何让调用者知道?


  答:,即在set方法改变属性时,触发,这种模式也可以理解为观察者模式


  3、重写equals为何要重写hashCode?


  答:判断两个对象是否相等,比较的就是其hashCode,如果你重载了equals,比如说是基于对象的内容实现的,而保留hashCode的实现不变,那么很可能某两个对象明明是“相等”,而hashCode却不一样。hashcode不一样,就无法认定两个对象相等了


  4、谈谈你对JVM的理解?


  答:Java语言的一个非常重要的特点就是与平台的无关性。而使用Java虚拟机是实现这一特点的关键。Java编译器只要面向JVM,生成JVM能理解的代码或字节码文件。Java源文件经编译成字节码程序,通过JVM将每一条指令翻译成不同平台机器码,通过特定平台运行。


  JVM执行程序的过程:I.加载。class文件,II.管理并分配内存,III.执行垃圾收集


  JRE(java运行时环境)由JVM构造的java程序的运行环境


  5、Mysql的事物隔离级别?


  答:Mysql的事物隔离级别其实跟Spring的事物隔离级别一样,都是1、ReadUncommitted(读取未提交内容),2、ReadCommitted(读取提交内容),3、RepeatableRead(可重读),4、Serializable(可串行化)


  6、Spring的原理


  答:Spring的核心是IOC和AOP,IOC是依赖注入和控制反转,其注入方式可分为set注入、构造器注入、接口注入等等。IOC就是一个容器,负责实例化、定位、配置应用程序中的对象及建立这些对象间的依赖。简单理解就是:JAVA每个业务逻辑处理至少需要两个或者以上的对象协作进行工作,但是每个对象在使用它的合作对象的时候,都需要频繁的new对象来实现,你就会发现,对象间的耦合度高了。而IOC的思想是:Spring容器来管理这些,对象只需要处理本身业务关系就好了。至于什么是控制反转,就是获得依赖对象的方式反转了。


  AOP呢,面向切面编程,最直接的体现就是Spring事物管理。至于Spring事物的相关资料,就不细说了


  7、谈谈你对NIO的理解


  答:IO是面向流,NIO是面向缓冲,这里不细讲了,具体参照:


  8、ArrayList和LinkedList、Vector的区别?


  答:总得来说可以理解为:.


  1.ArrayList是实现了基于动态数组的数据结构,LinkedList基于链表的数据结构。


  2.对于随机访问get和set,ArrayList觉得优于LinkedList,因为LinkedList要移动指针。


  3.对于新增和删除操作add和remove,LinedList比较占优势,因为ArrayList要移动数据


  Vector和ArrayList类似,但属于强同步类,即线程安全的


  9、随便说说几个单例模式,并选择一种线程安全的


  答:单例的类别:懒汉、饿汉、枚举、静态内部类、双重校验锁等等,选择线程安全我选最后一种,双重校验锁。


  10、谈谈红黑树


  答:算法和数据结构一直是我薄弱之处,这方面说自己补吧,成效不大


Java高级工程师面试题及答案


      以上就是极悦注册机构小编介绍的“Java高级工程师面试题及答案”的内容,希望对大家有帮助,如有疑问,请在线咨询,有专业老师随时为你服务。


提交申请后,顾问老师会电话与您沟通安排学习

免费课程推荐 >>
技术文档推荐 >>