举例说明环境变量及 PATH 的作用
2025-08-14
环境变量是操作系统里的一组全局设置,用来保存字符串信息,分为用户变量和系统变量,且用户变量会覆盖同名的系统变量。PATH 是其中很重要的一项,决定了系统去哪些目录找可执行文件。本文通过 JDK 和 Git 的配置示例,演示了环境变量和 PATH 的设置过程,并用一个小模拟说明系统是如何一步步查找命令的,让读者更直观地理解它在命令行里的作用。
763 字
|
4 分钟

Java到底用接口还是抽象类?
2025-08-12
随着Java的发展,接口(Interface) 的功能不断增强(默认方法、私有方法、静态方法等),而 抽象类(Abstract Class) 的角色逐渐被弱化。现代Java开发中,接口已经可以替代90%的抽象类场景。
1044 字
|
5 分钟
Java中String的到底存在哪里???
2025-07-28
这篇文章专门聊 Java 里 String 是怎么存的。我们会讲到堆和字符串常量池的区别,字面量和 new 出来的字符串在内存里的不同去处,还会顺带回答一个常见的面试问题:到底创建了几个对象?最后再看看 String.intern() 是怎么影响常量池的,让你对字符串的内存分配和优化有个清晰的认识。
530 字
|
3 分钟
大型互联网项目架构及技术选型
2025-07-20
介绍了SOA与微服务架构的核心理念及区别,分析了SpringCloud与Dubbo两大服务框架的定位与生态对比,阐述了RPC与Feign在服务间通信中的应用场景和优劣,最后对分布式锁的主流实现Zookeeper与Redis进行了对比,帮助读者全面理解互联网项目架构设计与技术选型的关键要点。
1629 字
|
8 分钟
MQ消息重复消费的原因、解决方案对比
2025-07-03
消息重复消费是很多系统都会碰到的麻烦事,本文先讲清楚为什么会重复,然后说说用 Redis 和消息确认(ACK)能不能解决问题,哪里还会出坑。最后给你介绍几个靠谱的解决方案,帮你保证消息不丢也不重复,让业务更稳更安全。
1214 字
|
6 分钟
数组与链表:性能差异的深层解析与查询效率优化
2025-06-25
探讨了数组与链表在时间复杂度之外的真正性能差异。时间复杂度不等同于实际性能,CPU缓存命中率、扩容成本和空间开销是影响实际性能的关键因素。此外,介绍了优化数组和链表查询效率的策略。
1593 字
|
8 分钟
Service 层只有一个实现类也要写接口?
2025-06-20
本文将探讨“为什么只有一个实现类也需要接口”,并逐步引出接口 + 实现类的典型用途——策略模式。我们将通过两个典型的实战案例:“登录策略”和“支付策略”,讲解策略模式在 Spring 中的落地方式。
1447 字
|
7 分钟
Java synchronized 深度指南:锁对象、用法与六种加锁模式详解
2025-06-13
Java同步机制的核心是对象监视器锁(monitor lock),通过synchronized实现线程同步。锁对象必须是引用类型,可以是实例对象(this)、类对象(Class)。synchronized有6种写法:3种实例锁(this、实例变量、实例方法)和3种类锁(Class、静态变量、静态方法)。wait/notify机制基于对象Monitor,调用wait()会释放锁并进入等待集合,notify()唤醒线程重新竞争锁。实例锁保护单个实例资源,类锁保护全局类资源。
1262 字
|
6 分钟