首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
Java面试题集锦 - 有序号
lfsun666
创建于2023-02-23
订阅专栏
为什么叫“Java面试题集锦”?因为涵盖了好多好多面试题!嘿嘿嘿 那不是废话吗!!!
等 21 人订阅
共999篇文章
创建于2023-02-23
订阅专栏
默认顺序
默认顺序
最早发布
最新发布
【380、HashMap 和 TreeMap 区别】
HashMap和TreeMap都是Java中的Map接口的实现,它们都提供了将键映射到值的方法。然而,它们之间有以下区别: 数据结构:HashMap使用哈希表,而TreeMap使用红黑树。 键的排序:
【379、HashMap1.8 的底层结构以及扩容】
HashMap1.8 的底层结构是数组加链表/红黑树的混合结构,数组用来存储节点,链表/红黑树用来解决哈希冲突。 具体来说,HashMap1.8 内部维护了一个 Node 类型的数组 table,每个
【378、单点登录怎么实现】
单点登录(Single Sign-On,简称 SSO)是一种身份认证机制,允许用户使用一个帐户(用户名和密码)登录多个应用程序。实现单点登录可以提高用户的使用体验和安全性。 下面是一种常见的实现方式:
【377、MySQL 索引怎么创建,有哪些注意事项,查询优化】
MySQL 索引可以加快数据查询的速度,提高数据库的性能。创建索引的语法如下: 其中,index_name 是索引名称,table_name 是表名称,(column1, column2, ...)
【376、微服务用到了哪些技术,与单体的区别,都有哪些组件并介绍一下】
微服务是一种分布式架构风格,将应用程序拆分成一组小的服务,这些服务可以独立开发、部署和扩展。在微服务架构中,每个服务都是一个独立的进程,可以通过轻量级的通信机制进行通信,每个服务都有自己的数据库,可以
【375、做一个下单发送短信你会去怎么实现,记录发送的次数会选择用什么记录】
要实现下单发送短信的功能,可以考虑以下步骤: 在下单接口中,调用发送短信的方法,将短信内容和接收者手机号作为参数传递进去。 在发送短信的方法中,使用短信服务提供商提供的 SDK 或者 API 发送短信
【374、讲下代理模式,以及如何实现】
代理模式是一种常见的设计模式,它为其他对象提供一个代理,以控制对这个对象的访问。代理模式可以在不改变原始对象的情况下,增加或修改一些额外的行为,或者对原始对象的访问进行限制或保护。 代理模式的实现可以
【373、Spring IoC & AOP】
Spring框架是一个轻量级的Java开发框架,它提供了依赖注入(Dependency Injection,DI)和面向切面编程(Aspect-Oriented Programming,AOP)等重要
【372、了解哪些常见的设计模式和软件设计原则】
常见的设计模式: 工厂模式:将对象的创建过程封装起来,通过工厂方法来获取对象实例。 单例模式:确保一个类只有一个实例,并提供全局访问点来访问该实例。 装饰器模式:动态地为对象添加额外的职责,避免继承关
【371、Redis 加锁过程,系统挂了,怎么解锁】
Redis加锁的过程可以通过Redis命令SETNX和EXPIRE来实现。首先使用SETNX命令尝试在Redis中创建一个指定的键(key)作为锁,如果创建成功则表示当前进程获得了锁,否则表示锁已经被
【370、Redisson 是怎么实现分布式锁的】
Redisson是一个基于Redis的Java驻内存数据网格(In-Memory Data Grid)和分布式锁框架,它可以非常方便地实现分布式锁。 Redisson实现分布式锁的主要思路是基于Red
【369、打印日志规范】
在Java开发中,打印日志是一项非常重要的工作。它可以帮助我们及时发现问题,定位异常,了解系统的运行情况,从而提高系统的可维护性和可靠性。以下是一些打印日志的规范: 级别划分:打印日志应该按照级别划分
【368、随着活动事件越来越多,如何从后端进行设计上的优化】
随着活动事件越来越多,后端的设计需要进行优化,以保证系统的性能和可扩展性。以下是一些可以考虑的优化方案: 数据库优化:对于数据量较大的系统,可以考虑使用数据库集群、数据库分库分表等方式进行优化,提高数
【367、是否遇到过线程安全的问题】
Java开发中常常会遇到线程安全的问题。线程安全是指当多个线程同时访问一个共享资源时,不会出现数据竞争和不一致的情况,确保程序的正确性和可靠性。以下是一些Java开发中可能遇到的线程安全问题: 数据竞
【366、线程池是如何创建,有哪些参数,分别起什么作用】
线程池是一种常见的并发编程模型,它通过维护一组可重用的线程来提高程序的效率和响应速度。线程池的创建主要涉及以下参数: corePoolSize:线程池中最小的线程数量。当提交任务时,如果线程池中的线程
【365、多线程使用实例:多线程将大文件拆分和小文件合并】
多线程可以提高程序的并发性和效率,常见的多线程使用实例包括: 线程池:线程池是一种常用的多线程处理方式,通过预先创建一定数量的线程池,并将任务分配给池中的线程来提高程序的效率。Java中提供了Exec
【364、微服务交互采取的序列化方式】
在微服务架构中,由于服务之间需要进行数据交互,因此需要将数据进行序列化和反序列化。常用的序列化方式包括以下几种: JSON序列化:JSON是一种轻量级的数据交换格式,常用于Web应用中的数据交互。JS
【362、Nacos 的服务注册与发现原理】
Nacos是一个基于服务发现和配置管理的平台,其中服务注册和发现是其中的核心功能。下面是Nacos服务注册与发现的工作原理: 服务注册:服务提供方向Nacos注册中心注册自己的服务信息,包括服务名、I
【363、接口之间的通讯协议】
在接口之间的通讯中,需要定义一种通讯协议,以确保不同系统之间的数据交换能够顺畅进行。通讯协议通常包括以下方面: 数据格式:定义数据的格式,例如使用JSON或XML格式进行数据交换。 传输协议:定义数据
【361、对微服务的了解】
微服务是一种面向服务架构(SOA)的设计风格,它将应用程序划分为一组小型的、独立的服务,每个服务都可以独立部署、独立运行,并通过轻量级通信机制进行通信。每个微服务都应该专注于解决一个特定的业务问题,而
下一页