- 博客(7)
- 收藏
- 关注
原创 Java&设计模式——装饰器模式
装饰器模式是一种结构型设计模式,通过组合而非继承来扩展对象功能,避免类爆炸问题。本文通过实现一个记录移除元素的HistorySet类,展示了装饰器模式的应用:该类实现Set接口并持有Set实例,在不修改原类的基础上添加新功能。类似地,Java IO流中的BufferedInputStream也采用该模式提升读取效率。装饰器模式的核心是装饰者与被装饰者实现相同接口,装饰者持有被装饰者引用,符合开闭原则和组合优于继承原则,使功能扩展更加灵活高效。
2025-12-17 09:19:20
323
原创 AI应用开发-主流的Agent设计框架
本文探讨了大模型时代智能代理(Agent)的核心概念与架构设计。Agent基于大语言模型(LLM)构建,具备自主感知、推理规划、执行行动和持续进化的能力,其核心公式为Agent=LLM+Tools。文章对比了Workflow(预定义流程)与Agent(自主决策)的区别,并介绍了Authropic、OpenAI和Google三大框架的设计思路:Authropic区分了提示链、路由等Workflow模式与自主Agent;OpenAI提出单/多智能体系统,强调管理者与去中心化协作模式;Google则聚焦模型、工具
2025-12-03 11:06:51
838
原创 Java&Map特殊方法妙用
本文介绍了Java中Map接口的几个特殊方法及其妙用:1. getOrDefault在键不存在时返回默认值,适用于配置处理场景;2. computeIfAbsent在键不存在时初始化值,适用于购物车商品计数或构建Map<List>结构;3. computeIfPresent仅在键存在时对值进行操作;4. merge方法用于合并两个Map数据,可指定合并规则。这些方法能简化代码逻辑,提升开发效率。
2025-11-14 15:50:22
305
原创 Java&设计模式——建造者模式
本文介绍了Builder建造者模式的应用场景和实现方法。通过一个User类的例子,展示了当需要对象创建时进行条件校验时遇到的问题:传统的set方法会导致校验时机难以控制。文章逐步演示了如何通过Builder模式将对象构建过程与校验逻辑解耦,最终实现链式调用和自动校验的功能。关键点包括:1)私有化Builder构造方法;2)在build()方法中集中进行校验;3)通过返回this实现链式调用。这种模式既保证了对象创建的正确性,又提供了优雅的API调用方式。
2025-11-03 10:54:41
912
原创 ThreadLocal线程变量快速入门
ThreadLocal是Java中用于线程数据隔离的工具类,它通过为每个线程创建独立的数据副本来解决并发问题。典型应用场景包括银行账户取款(避免共享资源竞争)和Web请求处理(简化上下文传递)。ThreadLocal内部使用ThreadLocalMap存储数据,其中key为弱引用的ThreadLocal对象,value为线程私有数据。使用时需注意及时清理(如try-finally或过滤器)以防止内存泄漏,特别是在线程池环境中。相比同步锁方案,ThreadLocal能提升性能但需谨慎管理生命周期。
2025-10-22 19:00:00
626
1
原创 Java&Spring定时任务快速使用指南
本文介绍了Spring框架中定时任务的实现方法。首先通过@EnableScheduling注解开启定时任务功能,推荐配置专门的ThreadPoolTaskScheduler线程池。使用@Scheduled注解可以方便地定义定时方法,支持fixedDelay、initialDelay等参数设置执行时间。文章详细讲解了Cron表达式的语法规则,包括*、,、-、/、?等符号的使用方法。此外还介绍了与Quartz框架的整合方案,包括环境配置和任务定义方式。
2025-10-22 16:45:38
842
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅