首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
Java面试题集锦 - 有序号
lfsun666
创建于2023-02-23
订阅专栏
为什么叫“Java面试题集锦”?因为涵盖了好多好多面试题!嘿嘿嘿 那不是废话吗!!!
等 21 人订阅
共999篇文章
创建于2023-02-23
订阅专栏
默认顺序
默认顺序
最早发布
最新发布
【119、为什么事务@Transactional会失效】
在Spring框架中,@Transactional注解用于声明一个方法需要被包含在事务中,以确保数据库操作的一致性和完整性。@Transactional注解通常用于Service层或DAO层的方法上。
【118、volatile 有什么用?】
volatile 是 Java 中的关键字,用于修饰变量,其主要作用是保证变量在多线程环境中的可见性和禁止指令重排优化。 可见性 在多线程环境下,不同线程对同一个变量进行读写操作时,由于每个线程有自己
【117、springboot是如何操作事务的】
Spring Boot 默认采用 Spring Framework 的事务管理机制,支持声明式事务和编程式事务。 声明式事务 声明式事务是通过注解或 XML 配置来实现的,使用简单,适合大多数场景。S
【116、单例模式有几种写法?】
单例模式是一种常见的设计模式,它的主要目的是确保一个类只有一个实例,并提供全局访问点。单例模式的实现方式有以下几种: 懒汉式(线程不安全) 这种写法在类加载的时候不会创建实例,而是在第一次调用 get
【115、公平锁和非公平锁有什么区别?】
在多线程编程中,锁是一种常见的同步机制,可以用来保证多个线程之间的互斥访问。公平锁和非公平锁是锁的两种实现方式,它们的区别主要体现在获取锁的方式上。 公平锁 公平锁是指多个线程按照请求锁的顺序获取锁,
【114、死锁产生的原因有哪些?】
死锁是指两个或多个进程(线程)相互等待对方持有的资源,导致无法继续执行的情况。在并发编程中,死锁是一个常见的问题,可以产生的原因包括以下几个方面: 资源竞争:当多个进程(线程)同时竞争有限的资源时,可
【113、死锁的排查工具有哪些?】
死锁是指两个或多个进程(线程)相互等待对方持有的资源,导致无法继续执行的情况。在并发编程中,死锁是一个常见的问题,需要使用专门的工具来进行排查和解决。 以下是常用的死锁排查工具: jstack:jst
【112、为什么单例一定要加 volatile?】
在Java语言中,单例模式是一种常见的设计模式,用于确保一个类只有一个实例,并提供全局访问点。在实现单例模式时,通常会将构造函数私有化,并提供一个静态的getInstance()方法来获取单例对象。由
【111、MySQL 常用引擎有哪些?】
MySQL常用的引擎有以下几种: InnoDB:InnoDB是MySQL的默认存储引擎,它支持事务、行级锁和外键等特性,适合用于处理高并发的OLTP应用。 MyISAM:MyISAM是MySQL的另一
【110、聚簇索引和非聚簇索引有什么区别?】
聚簇索引和非聚簇索引是关系型数据库中常用的两种索引类型,它们的主要区别如下: 存储方式不同:聚簇索引是将数据按照索引顺序存储在磁盘上,因此聚簇索引的数据存储和索引存储是混合在一起的;而非聚簇索引则是将
【109、truncate、delete和drop的6大区别!】
在MySQL中,truncate、delete和drop是三个常用的命令,它们可以用于删除表或表中的数据,下面是它们的六大区别: 语法不同:truncate和delete是SQL语句,drop是DDL
【108、一个表中可以有多个自增列吗?】
在MySQL中,一个表只能有一个自增列,且该列必须是主键或唯一键。这是由MySQL自身的限制所决定的。 自增列(Auto Increment)是指当插入一行数据时,MySQL自动为该列生成一个唯一的、
【107、什么情况会导致 MySQL 索引失效?】
MySQL索引失效可能有多种原因,下面列举一些常见的情况: 数据库表数据量太小:如果表的数据量非常小,则MySQL可能不会使用索引,因为它认为全表扫描的代价更小。 索引列上进行了函数操作:如果在索引列
【106、int和Integer有什么区别?为什么要有包装类?】
int是Java的基本数据类型,表示整数,占用4个字节。而Integer是int类型的包装类,可以将int类型转换为对象。Integer类有一些方法,如valueOf()、parseInt()等,可以
【105、final关键字和final的4种用法?】
final关键字是Java中的修饰符,它可以用于修饰变量、方法和类,作用是表示“最终的”、“不可改变的”等含义。下面是final的4种用法: 修饰变量:被final修饰的变量是常量,其值不能被修改。可
【104、final、finally、finalize 有什么区别】
final、finally、finalize是三个在Java中容易混淆的关键字,它们的含义和用法不同。 final:用于修饰变量、方法和类。当变量被修饰为final时,其值不能被更改;当方法被修饰为f
【103、重写 equals 时为什么一定要重写 hashCode?】
在Java中,equals和hashCode是一对重要的方法,通常需要同时重写它们。这是因为equals方法用于判断两个对象是否相等,而hashCode方法用于计算对象的哈希值。在使用集合类(如Has
【102、元素排序Comparable和Comparator有什么区别?】
Java中可以对集合中的元素进行排序,排序的实现可以使用Comparable接口或Comparator接口,它们的区别如下: Comparable接口是在元素本身具有可比性的情况下使用的,该接口只有一
【101、HashSet如何保证元素不重复】
HashSet使用了哈希表(Hash Table)数据结构,它是一种以键-值(Key-Value)存储数据的结构,可以快速的插入或查找元素。在HashSet中,元素被添加进来时,首先会根据元素的Has
【100、抽象类和接口的区别】
抽象类和接口都是Java中实现多态的机制,它们都是用来约束子类必须要实现的方法。但是它们有以下区别: 实现方式:抽象类是一个类,而接口是一个接口。一个类只能继承一个抽象类,但可以实现多个接口。 构造方
下一页