文章列表

什么是 UUID,能保证唯一性吗?

本文详细解释什么是UUID(通用唯一识别码),并深入探讨其唯一性保证的概率基础。涵盖UUID v1与v4的生成原理、在分布式系统中的应用、作为数据库主键的优缺点,以及与雪花算法(Snowflake)的对比。为开发者面试和技术选型提供核心洞见。


犬小哈2026/1/19Java面试八股文

为什么重写 equals 时一定要重写 hashCode?

深入解析Java中重写equals必须重写hashCode这一核心规则。本文从Object类契约、HashMap底层机制出发,通过代码示例演示违反规则的严重后果,并给出最佳实践。助你透彻理解其原理,从容应对高级Java开发面试。


犬小哈2026/1/19Java面试八股文

为什么不能用浮点数表示金额?

本文详细解释为什么在Java中不能用float或double等浮点数类型表示金额,深入分析二进制浮点数的精度丢失问题及其在金融计算中可能导致的严重后果,并提供正确的金额表示方案。


犬小哈2026/1/18Java面试八股文

AIO、BIO 和 NIO 的区别是什么?

本文详细解析Java中AIO、BIO和NIO三种I/O模型的核心区别,从同步/异步、阻塞/非阻塞原理入手,结合线程模型与适用场景,说明为何NIO成为现代高并发网络应用的主流选择。


犬小哈2026/1/18Java面试八股文