
面试题
文章平均质量分 83
本专栏整理了最近比较高频的面试题
Daylan Du
软件工程专业,主要研究JAVA后端。对数据库,操作系统,spring系列框架等有一定的了解。努力学习编程知识,争取不搬砖!
展开
-
面试题之Java的异常
Throwable 是所有 Java 程序中错误处理的父类 ,有两种直接子类: Error 和 Exception。Error 表示由 JVM 所侦测到的无法预期的错误,由于这是属于 JVM 层次的严重错误 ,导致 JVM 无法继续执行,因此,这是不可捕捉到的,无法采取任何恢复的操作,顶多只能显示错误信息。Exception 异常表示程序本身可以捕获并且可以处理的异常。Exception 这种异常又分为两类:运行时异常和非运行时异常...原创 2022-08-31 14:49:45 · 216 阅读 · 0 评论 -
面试题之Java的克隆
在Java语言中,数据类型分为值类型(基本数据类型)和引用类型,值类型包括int、double、byte、boolean、char等简单数据类型,引用类型包括类、接口、数组等复杂类型。浅克隆和深克隆的主要区别在于是否支持引用类型的成员变量的复制,若克隆对象中存在引用类型的属性,深克隆会将此属性完全拷贝一份,而浅克隆仅仅是拷贝一份此属性的引用。...原创 2022-08-31 08:45:52 · 280 阅读 · 0 评论 -
面试题之HashMap与HashTable的区别
本文章针对比较高频的面试题:HashTable和HashMap的区别做出了回答,在继承类方面的不同、在初始化容量上的不同、在扩容方面的不同、对key和value对null值上的不同,以及最主要的线程安全问题上的不同,希望可以帮助到小伙伴。...原创 2022-08-30 16:09:22 · 346 阅读 · 0 评论 -
高频面试题之G1回收器
与其他GC收集器相比,G1使用了全新的分区算法并行与并发并行性:G1在回收期间,可+以有多个GC线程同时工作,有效利用多核计算能力。此时用户线程STW并发性:G1拥有与应用程序交替执行的能力,部分工作可以和应用程序同时执行,因此,一般来说,不会在整个回收阶段发生完全阻塞应用程序的情况分代收集从分代上看,G1依然属于分代型垃圾回收器,它会区分年轻代和老年代,年轻代依然有Eden区和Survivor区。但从堆的结构上看,它不要求整个Eden区、年轻代或者老年代都是连续的,也不再坚持固定大小和固定数量。...原创 2022-08-26 21:10:11 · 501 阅读 · 0 评论 -
面试高频的CMS回收器
CMS收集器的关注点是尽可能缩短垃圾收集时用户线程的停顿时间。停顿时间越短(低延迟)就越适合与用户交互的程序,良好的响应速度能提升用户体验。CMS的垃圾收集算法采用标记-清除算法,并且也会STW,在G1出现之前,CMS使用还是非常广泛的。一直到今天,仍然有很多系统使用CMS GC...原创 2022-08-26 11:33:36 · 445 阅读 · 2 评论 -
Java集合之Map
Map与Collection并列存在,都是属于java.util包下的平级关系。key-valueentry)Map中的key和value可以是任何引用类型的数据Map中的key用Set来存放,不允许重复,即同一个Map对象所对应的类,须重写hashCode()和equals()方法常用String类作为Map的"键"key和value 之间存在单向一对一关系,即通过指定的 key 总能找到唯一的、确定的 value。原创 2022-08-24 20:39:14 · 557 阅读 · 5 评论 -
Java集合之Set
Set接口是Collection的子接口,set接口没有提供额外的方法Set集合是一个无序不可重复的集合,如果试把两个相同的元素加入同一个Set集合中,则添加操作失败。Set判断两个对象是否相同不是使用==运算符,而是根据equals()方法没有索引,不能使用普通的for循环遍历HashSet是Set 接口的典型实现,大多数时候使用Set集合时都使用这个实现类。HashSet按Hash算法来存储集合中的元素,因此具有很好的存取、查找、删除性能。原创 2022-08-24 20:37:23 · 685 阅读 · 0 评论 -
Java集合之List
鉴于Java中数组用来存储数据的局限性,我们通常使用List替代数组List集合类中元素有序(存储和取出元素顺序相同)、且可重复,集合中的每个元素都有其对应的顺序索引,可以使用普通的for循环遍历List容器中的元素都对应一个整数型的序号记载其在容器中的位置,可以根据序号存取容器中的元素ArrayList、LinkedList和Vector(线程安全的)。原创 2022-08-24 20:26:24 · 589 阅读 · 0 评论 -
Java集合之Collection接口和Iterator接口
Iterator对象称为迭代器(设计模式的一种),主要用于遍历 Collection 集合中的元素。GOF给迭代器模式的定义为:提供一种方法访问一个容器(container)对象中各个元素,而又不需暴露该对象的内部细节。迭代器模式,就是为容器而生。Collection接口继承了java.lang.Iterable接口,该接口有一个**iterator()**方法,那么所有实现了Collection接口的集合类都有一个iterator()方法,用以返回一个实现了Iterator接口的对象。原创 2022-08-24 20:13:00 · 523 阅读 · 0 评论 -
Java集合之概述篇
一方面, 面向对象语言对事物的体现都是以对象的形式,为了方便对多个对象的操作,就要对对象进行存储。另一方面,使用Array存储对象方面具有一些弊端,而Java 集合就像一种容器,可以动态地把多个对象的引用放入容器中。集合的使用场景Java 集合可分为Collection和Map两种体系Collection接口:单列数据,定义了存取一组对象的方法的集合List:元素有序、可重复的集合Set:元素无序、不可重复的集合Map接口:双列数据,保存具有映射关系“key-value对”的集合。原创 2022-08-24 20:09:08 · 126 阅读 · 0 评论 -
一篇文章彻底理解Java中的值传递
Java 程序设计语言对对象采用的值传递一个方法不能修改一个基本数据类型的参数(即数值型或布尔型)。一个方法可以改变一个对象参数的状态。一个方法不能让对象参数引用一个新的对象。原创 2022-08-24 17:10:17 · 289 阅读 · 0 评论 -
Spring面试题之循环依赖与三级缓存
Spring中的循坏依赖问题与三级缓存机制是非常重要的知识,也是面试中最频繁问到的问题之一。解决循坏依赖的核心在于将实例化和初始化分开操作,即提前暴露某个不完整对象的引用,在后期再进行赋值操作。这也是三级缓存存在的意义,同时三级缓存也是为了解决spring中aop的实现(代理)。这篇文章是我自己对spring循坏依赖与三级缓存的理解,希望能帮助大家,如果有错误也希望大家指正......原创 2022-08-17 21:00:29 · 2275 阅读 · 0 评论 -
Spring面试题之BeanFactory和FactoryBean的区别
BeanFactory 和 FactoryBean的区别相同点:都是用来创建bean对象的不同点:使用BeanFactory创建对象的时候,必须遵循严格的生命周期流程,太复杂了。通过实现FactoryBean接口,可以简单的自定义某个对象的创建,并在**创建完成后,将其交给spring管理...原创 2022-08-17 21:43:01 · 965 阅读 · 1 评论 -
MyBatis的高频面试题
本文章总结了一些关系MyBatis持久层框架的高频面试题,包括MyBatis是什么、ORM是什么、 MyBatis与Hibernate做比较、#{}和${}的区别是什么、Mybatis是如何进行分页的?分页插件的原理是什么 、MyBatis实现一对一有几种方式?具体怎么操作的、Mybatis的一级、二级缓存。原创 2022-08-23 14:55:04 · 644 阅读 · 0 评论 -
面试题之MyBatis缓存
Mybatis中有一级缓存和二级缓存。一级缓存又被称为本地缓存,是Session会话级别的,一级缓存是MyBatis内部实现的一个特性,用户不能配置,默认情况下一级缓存是开启的,而且是不能关闭的。二级缓存是Application应用级别的缓存,它的是生命周期很长,跟Application的声明周期一样,也就是说它的作用范围是整个Application应用。 ...原创 2022-08-18 15:45:56 · 2977 阅读 · 1 评论 -
SpringBoot高频面试题
本文章整理了关于SpringBoot的高频面试题,包括什么是SpringBoot(对SpringBoot的理解)、SpringBoot的优点、SpringBoot 的核心注解是哪个?它主要由哪几个注解组成的、如何理解 Spring Boot 配置加载顺序、Spring Boot 的核心配置文件有哪几个?它们的区别是什么、Spring Boot 中的 starter 到底是什么、 spring-boot-starter-parent 有什么用、Spring Boot 打成的 jar 和普通的 jar 的区别原创 2022-08-23 16:04:21 · 554 阅读 · 0 评论 -
SpringMVC的高频面试题
本文章整理了一些关于SpringMVC的高频面试题,包括SpringMVC的优点、 SpringMVC的执行流程、SpringMVC怎么样设定重定向和转发的、SpringMVC常用的注解有哪些、SpringMVC的控制器是不是单例模式、SpringMVC和struts2的区别有哪些、怎么样把某个请求映射到特定的方法上面、怎么样在方法里面得到Request或者Session、SpringMVC怎么和 AJAX 相互调用的等,适合对SpringMVC已经有一定了解的人,希望可以帮助到大家原创 2022-08-23 10:32:55 · 627 阅读 · 1 评论