加入收藏 | 设为首页 | 会员中心 | 我要投稿 网站开发网_马鞍山站长网 (https://www.0555zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 运营 > 正文

Java高级工程师面试题总结及参考答案

发布时间:2020-12-31 22:01:51 所属栏目:运营 来源:网络整理
导读:副标题#e# 一、面试题基础总结 1、?JVM结构原理、GC工作机制详解 答:具体参照:? ? ?,说到GC,记住两点:1、GC是负责回收所有无任何引用对象的内存空间。 注意:垃圾回收回收的是无任何引用的对象占据的内存空间而不是对象本身,2、GC回收机制的两种算法,

答:Mysql的事物隔离级别 其实跟 Spring的事物隔离级别一样,都是1、Read Uncommitted(读取未提交内容), 2、Read Committed(读取提交内容),3、Repeatable Read(可重读),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、谈谈红黑树

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

11、举例说说几个排序,并说明其排序原理

答:这里我就不细说了,大家自己看看?

12、Mysql索引的原理

答:索引的作用大家都知道,就是加快查询速度,但是原理,我说不上来,这里直接看吧:

13、序列化的原理和作用

(编辑:网站开发网_马鞍山站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!