首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
Java面试题集锦 - 有序号
lfsun666
创建于2023-02-23
订阅专栏
为什么叫“Java面试题集锦”?因为涵盖了好多好多面试题!嘿嘿嘿 那不是废话吗!!!
等 21 人订阅
共999篇文章
创建于2023-02-23
订阅专栏
默认顺序
默认顺序
最早发布
最新发布
【640、项目中用到了哪些 SQL 优化手段】
使用索引:索引可以提高查询效率,尤其是在表中有大量数据时。适当创建和使用索引可以减少数据扫描的时间,从而提高查询速度。 优化查询语句:使用正确的查询语句可以减少不必要的数据扫描和处理,从而提高查询效率
【639、ReentrantReadWriteLock 和 StampedLock】
ReentrantReadWriteLock和StampedLock都是Java中的锁实现,它们都提供了读写分离的机制,即允许多个线程同时读取共享数据,但只允许一个线程写入共享数据。 Reentran
【638、聊聊ThreadLocal 】
ThreadLocal是Java中的一个线程本地存储类,它提供了一种将数据与线程关联的方法。简单来说,ThreadLocal可以在一个线程中存储一些数据,并且这些数据对于其他线程是不可见的,从而保证了
【637、拥塞控制】
拥塞控制是指在计算机网络中通过控制网络中的流量来避免拥塞的发生或减少拥塞的程度的一种技术。拥塞是指网络中的传输量大于网络的承载能力,导致网络传输速度变慢或者网络不可用。拥塞控制可以避免网络出现拥塞,从
【636、项目中是用了哪些多线程的知识】
在实际的软件开发中,常常会使用多线程的技术来提高程序的性能和效率,例如: 使用线程池来管理和复用线程,避免频繁创建和销毁线程的开销。 使用多线程来处理网络请求,提高程序的响应速度和并发性能。 使用多线
【635、线程池处理任务的流程】
线程池处理任务的流程一般如下: 线程池初始化:在程序启动时,线程池被创建并初始化,包括线程池管理器、工作线程和任务队列等。 添加任务:当有任务需要执行时,调用线程池的提交任务方法,将任务添加到任务队列
【634、线程池原理】
线程池是一种常见的并发编程技术,用于管理和复用线程,从而提高程序的性能和资源利用率。线程池的原理如下: 创建线程池:线程池在程序启动时被创建,通常包括一个线程池管理器、多个工作线程和一个任务队列。 添
【633、使用多线程可能存在的问题】
使用多线程可以提高程序的并发性和性能,但同时也可能存在以下问题: 竞态条件(Race Condition):当多个线程同时访问共享数据时,如果没有使用锁或其他同步机制来保护这些数据,就会产生竞态条件,
【632、MySQL 和 Redis 怎么保持数据一致】
MySQL 和 Redis 是常用的关系型数据库和缓存数据库,它们的数据一致性需要我们在实际应用中做好保障。 以下是一些保证 MySQL 和 Redis 数据一致性的常见方法: 先写 MySQL,再写
【631、缓存穿透和缓存雪崩的区别,解决办法】
缓存穿透和缓存雪崩都是常见的缓存问题,但它们的原因和解决方法不同。 缓存穿透是指查询一个不存在的数据,由于缓存中没有对应的值,请求会穿过缓存层,直接查询数据库或其他后端服务,这样会造成后端服务的压力增
【630、Redis 中常见的数据结构,应用场景】
Redis 中常见的数据结构有: String:存储字符串,支持字符串的操作,如获取子串、拼接、追加等。应用场景:缓存数据、计数器、分布式锁。 Hash:存储键值对,类似于字典,可以对单个键进行读写操
【629、Redis 这类缓存和 Caffeine 的区别】
Redis 是一款高性能的内存数据库,也是一种分布式缓存系统,它可以将数据存储在内存中,以提高访问速度。Redis 通过网络提供对内存中数据的访问和操作,具有高性能、高可用性、数据持久化等特点,广泛应
【628、知道的本地缓存,选择 Caffeine 的原因】
本地缓存(Local Cache)是指将数据存储在应用程序的本地内存中,以减少对后端存储的访问,提高应用程序的响应速度和性能。在 Java 生态中,有许多本地缓存库可供选择,比如 Ehcache、Gu
【627、项目中是如何创建线程池的,什么不用Executors 去创建线程池】
在线程池的创建方面,使用 Executors 创建线程池是比较常见的方法,但是它也存在一些问题。Executors 提供了一些静态方法来创建不同类型的线程池,比如 newFixedThreadPool
【626、ThreadLocal 内存泄露问题是怎么导致的】
ThreadLocal 内存泄露问题通常是由于线程池、并发编程框架、容器、缓存等应用场景下使用不当而导致的。 具体来说,ThreadLocal 内存泄露问题通常有以下几种情况: 长期持有 Thread
【625、ThreadLocal 使用过程中可能存在的问题(内存泄露)】
ThreadLocal 是一种线程封闭的技术,它可以在多线程环境中,为每个线程提供一份独立的变量副本,从而避免多个线程之间的变量冲突问题。但是,ThreadLocal 在使用过程中也可能会出现内存泄漏
【624、synchronized 和 ReentrantLock 的区别,如何选择】
synchronized 和 ReentrantLock 都可以用来实现线程同步,但在使用时有一些不同点。 锁的获取方式不同: synchronized 是隐式锁,当线程进入 synchronized
【623、synchronized 的作用】
synchronized 是 Java 中的一个关键字,用于实现线程同步。synchronized 的主要作用是保证共享资源在多线程环境下的安全性,避免出现数据不一致、线程安全等问题。 在 Java
【622、并行和并发的区别】
并行和并发都与同时执行多个任务有关,但它们有不同的含义。 并行是指同时执行多个任务,通常需要多个处理器或者多核心的CPU来完成。例如,一个任务被划分为多个子任务,并且每个子任务由不同的处理器或CPU核
【621、进程和线程的区别】
进程和线程是操作系统中的两个重要概念,它们之间有以下几个区别: 资源分配:进程是操作系统分配资源的基本单位,每个进程都有独立的内存空间、文件描述符、网络连接等;而线程是在进程内部的一条执行路径,线程共
下一页