首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
Java面试题集锦 - 有序号
lfsun666
创建于2023-02-23
订阅专栏
为什么叫“Java面试题集锦”?因为涵盖了好多好多面试题!嘿嘿嘿 那不是废话吗!!!
等 21 人订阅
共999篇文章
创建于2023-02-23
订阅专栏
默认顺序
默认顺序
最早发布
最新发布
【680、常见的排序算法,快排原理、时间复杂度和空间复杂度。】
常见的排序算法有冒泡排序、选择排序、插入排序、希尔排序、归并排序和快速排序等。其中,快速排序是一种常用的基于比较的排序算法,其原理是通过选取一个基准元素,将数组分为左右两个子数组,将小于基准元素的元素
【679、Zset底层结构?key-value中的key底层结构?】
Zset(有序集合)底层结构是由一个跳跃表(skiplist)和一个哈希表(hash table)组成。跳跃表是一种有序的数据结构,其中的节点通过指针进行链接,可以高效地实现元素的查找和插入。在Zse
【678、乐观锁和悲观锁】
乐观锁和悲观锁都是并发控制的方法,用来解决多个线程同时访问共享资源时可能会出现的数据不一致问题。 悲观锁假设在并发访问的情况下,共享资源很可能会发生冲突,因此在访问共享资源之前先加锁,这样其他线程在访
【677、你知道哪些让索引失效的情况】
索引失效指的是在 SQL 查询过程中,索引不会被使用,导致查询效率低下。以下是一些可能导致索引失效的情况: 对索引列进行了函数操作,例如 WHERE upper(name) = 'ABC',这会导致索
【676、AQS 基本介绍以及 JDK 中的应用】
AQS(AbstractQueuedSynchronizer)是Java并发包中的一个基础类,它提供了一种简单的机制来实现同步器,例如ReentrantLock和Semaphore等。AQS的设计思想
【675、服务端出现大量close_wait状态,可能的情况?】
CLOSE_WAIT 是一个网络状态,表示一个TCP连接已经被对端关闭,但是本端还有数据未发送完毕,此时本端等待对端发送 FIN 包以关闭连接。如果在该状态下没有及时关闭连接,将导致大量的 CLOSE
【674、介绍一下binlog和redolog】
Binlog和RedoLog都是MySQL数据库中的日志文件,它们用于记录数据库操作,以保证数据的一致性和持久性。 Binlog(二进制日志)是MySQL的归档日志文件,记录了所有对数据库的修改操作,
【673、数据库索引结构】
数据库索引是一种用于提高数据库查询性能的数据结构。常见的数据库索引结构包括以下几种: B-Tree索引:B-Tree是一种平衡树数据结构,广泛应用于数据库索引中。B-Tree索引可以支持快速的范围查询
【672、一条 sql 语句判断索引是否生效】
假设有一个名为 users 的表,其中包含 id、name 和 age 三个字段。现在需要查询年龄大于 18 岁的用户姓名。下面是一条简单的 SQL 语句: 为了判断这条 SQL 语句是否使用了索引,
【671、穿透、击穿、雪崩问题,以及怎么处理?】
穿透、击穿、雪崩问题是指在缓存技术中常见的问题,以下是它们的具体解释以及如何处理: 穿透问题:指一个查询不存在于缓存和数据库中的数据时,请求会穿透缓存直接访问数据库,这将导致频繁访问数据库,降低系统性
【670、java中的乐观锁和悲观锁?cas除了原子类还有那些用法?自己怎么用cas?】
Java中的乐观锁和悲观锁都是用于并发控制的机制,用于解决多个线程同时访问共享资源时的数据安全问题。 悲观锁:指的是在访问共享资源之前,先对资源进行加锁,确保其他线程无法同时访问资源。悲观锁的代表是s
【669、java程序运行了一周,发现老年代内存溢出,分析一下?】
老年代内存溢出是Java应用程序在运行时经常遇到的一种问题。一般来说,Java的堆内存被分为新生代和老年代两个部分,新生代用于存放新创建的对象,而老年代则用于存放长时间存活的对象。如果Java程序的内
【668、sychronized 的作用】
synchronized 是 Java 中的一个关键字,用于实现线程之间的同步,主要有以下作用: 线程安全:synchronized 可以确保多个线程在访问共享资源时,同一时刻只有一个线程执行同步代码
【667、jvm运行时分区?】
Java虚拟机(JVM)运行时分为以下几个区域: 程序计数器(Program Counter Register):是一块较小的内存空间,可以看作是当前线程所执行的字节码的行号指示器。每个线程都有一个独
【666、为什么用docker?】
Docker是一种开源的容器化技术,它可以让应用程序和其依赖的运行环境(如库、配置文件等)被打包成一个容器,并且可以在任何地方运行。与虚拟机相比,Docker更加轻量级和快速,因为它不需要模拟整个操作
【665、Redis 基本的数据结构】
Redis支持以下五种基本数据结构: String:最基本的数据结构,可以存储任何类型的数据,如字符串、数字和二进制数据等。 List:双向链表结构,可以存储多个有序的字符串元素。可以支持对列表的头部
【664、sychornized 为什么是重量级锁,从操作系统层面讲】
在操作系统层面,每个 Java 线程都与操作系统线程相对应。每个线程都有一个线程栈,其中包含了线程正在执行的方法和变量等信息。在 Java 中,每个对象都有一个与之相关联的监视器(也称为内部锁或互斥锁
【663、线程池核心参数,常见的饱和策略】
线程池是一种常见的多线程管理机制,可以提高程序的并发处理能力。在线程池中,有一些核心参数需要设置,包括: 1. 核心线程数:线程池中一开始就创建的线程数量,即使这些线程处于空闲状态,也不会被回收。 1
【662、count(*)里面*的理解?】
在 SQL 中,COUNT( ) 中的 * 表示所有列。COUNT( ) 函数用于统计某个表或者视图中的记录数,而不管具体是哪一列。当在 COUNT 函数中使用 * 时,它会统计所有的行数,包括 NU
【661、怎么分析 SQL 语句性能】
要分析 SQL 语句的性能,可以采用以下步骤: 执行计划分析:执行计划是数据库根据 SQL 语句生成的执行计划,可以通过执行计划来了解 SQL 语句的执行过程和性能瓶颈。可以使用数据库的 Explai
下一页