ZHE|张恒
码龄9年
求更新 关注
提问 私信
  • 博客:64,117
    64,117
    总访问量
  • 85
    原创
  • 94
    粉丝
  • 24
    关注
IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:四川省
加入CSDN时间: 2017-04-24

个人简介:学的越多,不会的越多

博客简介:

ZHE|张恒的博客

查看详细资料
个人成就
  • 获得1,411次点赞
  • 内容获得87次评论
  • 获得831次收藏
  • 博客总排名20,633名
  • 原力等级
    原力等级
    4
    原力分
    752
    本月获得
    8
创作历程
  • 80篇
    2025年
  • 2篇
    2018年
  • 3篇
    2017年
成就勋章
TA的专栏
  • Java
    10篇
  • 设计模式
    17篇
  • Linux
    9篇
  • AI
    2篇
  • LeetCode
    2篇
  • 算法
    3篇
  • Docker
    8篇

TA关注的专栏 2

TA关注的收藏夹 0

TA关注的社区 0

TA参与的活动 10

兴趣领域 设置
  • Java
    spring cloudjvmmybatis
  • 后端
    架构
  • 服务器
    linux
创作活动更多

AI 镜像开发实战征文活动

随着人工智能技术的飞速发展,AI 镜像开发逐渐成为技术领域的热点之一。Stable Diffusion 3.5 FP8 作为强大的文生图模型,为开发者提供了更高效的图像生成解决方案。为了推动 AI 镜像开发技术的交流与创新,我们特此发起本次征文活动,诚邀广大开发者分享在 Stable Diffusion 3.5 FP8 文生图方向的实战经验和创新应用 本次征文活动鼓励开发者围绕 Stable Diffusion 3.5 FP8 文生图方向,分享以下方面的内容: 1. 技术实践与优化 - Stable Diffusion 3.5 FP8 模型架构解析与优化技巧 - 文生图生成效果的提升方法与技巧 - 模型部署与加速策略,例如使用 Hugging Face、Diffusers 等工具 - 针对特定场景(例如二次元、写实风)的模型微调与定制化开发 2. 应用场景探索 - Stable Diffusion 3.5 FP8 在不同领域的应用案例分享,例如游戏设计、广告创意、艺术创作等 - 利用 Stable Diffusion 3.5 FP8 实现图像编辑、图像修复、图像增强等功能的探索 - 结合其他 AI 技术(例如 NLP、语音识别)构建更强大的应用 3. 创新应用与思考 - 基于 Stable Diffusion 3.5 FP8 的创新应用场景设计 - AI 镜像开发的未来发展方向的思考与展望 - 对 AI 镜像开发伦理、安全等问题的探讨

30人参与 去参加
  • 最近
  • 文章
  • 专栏
  • 代码仓
  • 资源
  • 收藏
  • 关注/订阅/互动
更多
  • 最近

  • 文章

  • 专栏

  • 代码仓

  • 资源

  • 收藏

  • 关注/订阅/互动

  • 社区

  • 帖子

  • 问答

  • 课程

  • 视频

搜索 取消

探秘 Java 类的高级特性:从继承到多态

Java面向对象高级特性包括:继承(代码复用机制,支持方法重写)、多态(实现统一接口调用不同对象)、抽象类与接口(定义模板与契约)、封装(数据隐藏与控制访问)以及final修饰符(控制不可变性)。此外,方法重载与覆盖、组合与依赖关系也是重要特性。这些特性共同增强了Java的灵活性、可扩展性和安全性,使代码更易于维护和重用。
原创
博文更新于 2025.11.29 ·
687 阅读 ·
24 点赞 ·
1 评论 ·
0 收藏

设计模式(十八)命令模式 —— 将操作封装成对象,实现撤销、队列等扩展

命令模式:封装请求与行为的对象化设计 命令模式将操作请求封装为独立对象,支持撤销、队列、事务等高级功能。其核心角色包括: Command:定义执行接口 ConcreteCommand:绑定接收者与操作 Receiver:执行业务逻辑 Invoker:触发命令执行 该模式通过对象化行为实现调用者与接收者的解耦,典型应用包括: 支持撤销/重做的文本编辑器 宏命令组合 异步任务调度 GUI事件处理 关键优势在于行为的可编程性,使操作可存储、传递和组合。工业级实现需考虑线程安全、异步撤销等复杂场景。
原创
博文更新于 2025.11.29 ·
1170 阅读 ·
19 点赞 ·
1 评论 ·
13 收藏

Spring 原理:BeanFactory 与 ApplicationContext

本文深入解析Spring框架两大核心接口BeanFactory与ApplicationContext的差异。BeanFactory作为基础IoC容器,提供懒加载、依赖注入等基础功能;而ApplicationContext作为高级容器,在继承BeanFactory基础上增加预实例化、国际化、事件机制等企业级特性。文章从功能对比、源码分析、生命周期等多个维度进行阐述,并指出ApplicationContext = BeanFactory + 增强功能,是生产环境的首选方案。通过容器层级、使用示例和面试问题总结,
原创
博文更新于 2025.11.29 ·
1658 阅读 ·
33 点赞 ·
2 评论 ·
28 收藏

从 Thread 到 Executor 框架

并发编程是 Java 的灵魂之一。从最初的 Thread 类到现代的线程池与异步框架,Java 提供了强大的并发工具链。本文将系统讲解 Java 多线程的实现方式、线程池架构、核心参数、常见问题与最佳实践。
原创
博文更新于 2025.11.29 ·
277 阅读 ·
6 点赞 ·
0 评论 ·
11 收藏

Java CompletableFuture 详解与实战:让异步编程更优雅

Java 8引入的CompletableFuture革新了异步编程方式,解决了传统Future的阻塞、链式调用和任务组合等问题。它集成了异步执行、链式调用、任务组合和异常处理等特性,支持非阻塞操作和流式编程。通过对比传统Future,CompletableFuture在代码可读性、扩展性和并发效率上优势明显。最佳实践包括使用自定义线程池、合理拆分逻辑和妥善处理异常。该工具让多线程编程更优雅高效,实现了"用同步思维写异步代码"的目标。
原创
博文更新于 2025.11.29 ·
834 阅读 ·
29 点赞 ·
0 评论 ·
20 收藏

Java 泛型详解:类型参数的力量

本文系统讲解了Java泛型的概念与使用方式。泛型通过在类或方法中引入类型参数,提高了代码的类型安全性和复用性。主要内容包括:1)泛型的基本语法,如定义泛型类和接口;2)泛型方法及其类型推断;3)三种通配符(?、? extends T、? super T)的使用场景;4)边界限制和多重限制;5)泛型的优缺点,如类型安全与类型擦除的影响;6)常见陷阱,如静态上下文和instanceof的限制。泛型是现代Java编程的重要特性,能显著减少类型转换和运行时错误。
原创
博文更新于 2025.11.28 ·
1221 阅读 ·
5 点赞 ·
1 评论 ·
4 收藏

Java 反射机制解析:从基础概念到框架实践

反射机制允许在运行时动态获取类的信息并操作对象,是Java动态特性的核心。通过Class类可获取类属性、方法和构造器,实现动态实例化对象和调用方法。反射常用于框架开发(如Spring、Hibernate)、工具类实现等场景。获取Class对象有三种方式:类.class、对象.getClass()和Class.forName()。虽然反射提高了灵活性,但性能较低且会破坏封装性,应谨慎使用。合理运用反射能增强程序动态能力,但需避免滥用。
原创
博文更新于 2025.11.28 ·
939 阅读 ·
27 点赞 ·
1 评论 ·
1 收藏

Spring Bean 生命周期

Spring Bean生命周期是容器管理对象的核心机制,涵盖从创建到销毁的完整流程。关键阶段包括:定义解析、实例化、依赖注入、初始化回调(如@PostConstruct)、后置处理(BeanPostProcessor)和销毁回调(@PreDestroy)。通过Aware接口可获取容器资源,SmartLifecycle可控制启动顺序。典型应用场景包括缓存预热、动态代理、资源释放等。需注意循环依赖、注解失效等常见问题,合理使用生命周期回调能实现组件自动化管理。
原创
博文更新于 2025.11.28 ·
1002 阅读 ·
15 点赞 ·
0 评论 ·
12 收藏

设计模式(十七)责任链模式 — 把请求沿链传递,让处理逻辑可组合可扩展

摘要:责任链模式是一种行为设计模式,将请求处理拆分为多个处理器组成的链,每个处理器决定处理请求或传递给下一个处理器。该模式适用于审批流、拦截器等场景,能解耦发送者和处理者,支持动态组装处理链和短路/透传机制。实现上包含抽象处理器、具体处理器和请求对象,可通过链表或集合形式构建处理链。典型应用包括订单处理流程、Servlet过滤器和Spring拦截器。模式支持上下文传递和流程控制,便于灵活扩展业务逻辑。
原创
博文更新于 2025.11.28 ·
1443 阅读 ·
43 点赞 ·
0 评论 ·
16 收藏

设计模式(十六)迭代器模式 — 统一访问集合元素的方式,不暴露内部结构

迭代器模式是一种设计模式,用于在不暴露集合内部结构的前提下,提供统一的方式顺序访问集合元素。它通过分离集合对象的遍历行为与数据结构,实现客户端代码与具体集合实现的解耦。核心组件包括迭代器接口(定义遍历操作)和聚合接口(创建迭代器)。该模式支持多种遍历策略(正序、逆序、过滤等),允许同时维护多个遍历状态,广泛应用于Java集合框架、JavaScript可迭代对象、树结构遍历等场景。在测试和前端框架(如Vue/React的列表渲染)中,迭代器思想也起到重要作用,确保代码的封装性和可维护性。
原创
博文更新于 2025.11.28 ·
570 阅读 ·
9 点赞 ·
0 评论 ·
4 收藏

设计模式(十五)观察者模式 — 让对象能自动“被通知”,实现事件驱动

观察者模式是一种消息通知机制,当事件发生时会同步通知多个订阅者。它由主题(Subject)和观察者(Observer)组成:主题维护观察者列表,事件发生时通知所有观察者。该模式适用于订单状态变更、用户注册等需要多模块响应的场景,优势包括对象解耦、扩展性强、天然支持事件驱动架构。通过Java代码示例展示了订单状态变更如何通知短信、邮件和日志模块。观察者模式区别于发布订阅模式,更适用于单体系统。在Spring框架中也有典型应用,如事件监听机制。
原创
博文更新于 2025.11.27 ·
1083 阅读 ·
19 点赞 ·
0 评论 ·
9 收藏

设计模式(十四)模板方法模式 — 定义流程骨架,把步骤差异留给子类

摘要:模板方法模式是一种行为型设计模式,通过定义算法骨架(不可变流程)并将可变步骤延迟到子类实现,实现代码复用和扩展性。核心思想是“封装不变部分,扩展可变部分”,适用于流程固定但步骤细节不同的场景。该模式包含抽象类(定义模板方法和钩子)和具体子类(实现细节),典型应用如Spring框架的JdbcTemplate和JUnit测试生命周期。与策略模式相比,模板方法基于继承,适合稳定流程;策略模式基于组合,适合动态替换算法。
原创
博文更新于 2025.11.26 ·
351 阅读 ·
3 点赞 ·
0 评论 ·
3 收藏

设计模式(十三)策略模式 — 封装算法并自由切换,让行为更灵活

策略模式是一种将算法封装成独立模块的设计模式,允许运行时动态切换行为。它适用于支付方式、优惠算法等可替换业务场景,核心思想是将策略抽象为接口,通过上下文类调用具体实现。该模式优势在于开闭原则、解耦和避免if/else,但需注意避免策略内部再分支或Context固化策略等误区。在Spring中可结合@Autowired实现策略自动装配,适用于电商、支付等系统的灵活扩展场景。
原创
博文更新于 2025.11.26 ·
888 阅读 ·
33 点赞 ·
0 评论 ·
25 收藏

设计模式(十二)代理模式 — 用代理控制访问,实现延迟加载、权限控制等功能

代理模式是软件工程中实现灵活性与可维护性的核心设计模式,通过引入中间层对象控制对目标对象的访问。本文系统阐述了代理模式的14个关键方面:从基本定义、UML结构到各类代理(虚拟/保护/远程/缓存代理等)的实现场景;对比了静态与动态代理的差异;深入分析了JDK/CGLIB动态代理原理;并结合Spring AOP、Hibernate等框架展示了工业级应用。文章最后总结了最佳实践与常见陷阱,指出代理模式通过可控间接层实现系统扩展,是高级工程师解决横切关注点的利器。代理模式的价值在于以非侵入方式增强功能,其思想贯穿从
原创
博文更新于 2025.11.25 ·
1812 阅读 ·
42 点赞 ·
0 评论 ·
20 收藏

设计模式(十一)享元模式 — 共享对象以减少内存消耗的终极技巧

享元模式是一种结构型设计模式,通过共享可复用对象状态来优化内存使用。它区分内部状态(共享)和外部状态(上下文相关),适用于大量相似对象的场景,如文本编辑器、游戏开发等。核心组件包括抽象享元类、具体享元类、享元工厂和客户端。该模式能显著减少内存消耗,但需注意正确划分状态,避免将外部状态误置为内部状态。与单例模式不同,享元模式允许多个实例共享相同状态而非强制单一实例。实际应用中常与组合模式结合,但也需警惕状态划分错误、线程安全等潜在问题。
原创
博文更新于 2025.11.25 ·
1214 阅读 ·
34 点赞 ·
0 评论 ·
16 收藏

设计模式(十)外观模式 — 提供统一入口,简化复杂系统的使用

本文系统介绍了外观模式(Facade Pattern)的核心概念与应用。外观模式通过提供一个统一的高层接口,简化复杂系统的使用,隔离系统变化。文章详细阐述了外观模式的定义、类图结构、Java实现示例,并分析了其与封装、中介者模式等的关系。通过媒体播放器等真实案例,展示了外观模式如何降低系统耦合度,提高可维护性。最后指出外观模式是软件架构中最常用、最实用的设计模式之一,适用于几乎所有复杂业务流程场景。
原创
博文更新于 2025.11.23 ·
598 阅读 ·
23 点赞 ·
0 评论 ·
3 收藏

设计模式(九)装饰器模式 — 不修改源码却能扩展能力的优雅方案

本文深入剖析装饰器模式在企业级应用中的实践价值。通过商品价格计算案例,对比继承与装饰器方案的差异,揭示装饰器按需组合能力的核心优势。详细解析模式结构、代码实现、三种构建方式(手动/自动/Spring装配),并分享金融风控、电商优惠等真实场景应用。探讨装饰器与AOP的关系、性能影响及反模式,最终指出其架构意义在于构建可插拔、可扩展的组合式系统。全文以"组合优于继承"为主线,强调装饰器是现代软件架构的重要基础模型。
原创
博文更新于 2025.11.22 ·
967 阅读 ·
24 点赞 ·
0 评论 ·
8 收藏

设计模式(八)组合模式 — 以树结构统一管理对象层级

组合模式(Composite Pattern)是一种结构型设计模式,用于处理树形结构的对象集合。它将对象组织成树形结构,使客户端可以统一处理单个对象和组合对象。核心角色包括抽象组件(Component)、叶子节点(Leaf)和组合节点(Composite)。该模式适用于文件系统、UI组件、组织架构等层级结构场景,支持递归操作和统一接口访问。优点是简化客户端代码、增强扩展性,缺点是可能引入不必要的复杂性。典型实现涉及抽象组件定义公共接口,叶子节点处理最小单元,组合节点管理子节点并递归操作。组合模式常与迭代器、
原创
博文更新于 2025.11.21 ·
788 阅读 ·
27 点赞 ·
0 评论 ·
25 收藏

设计模式(七)桥接模式 — 抽象与实现分离,让维度独立扩展

桥接模式是一种结构型设计模式,通过将抽象与实现分离来解决多维度扩展问题。它使用组合代替继承,避免类爆炸现象,使不同维度能独立变化。典型应用场景包括图形渲染系统、消息通知系统等需要灵活扩展的领域。桥接模式的优点在于强大的扩展能力、清晰的架构设计和运行时灵活性,但也存在初始设计成本高、类数量增加等缺点。该模式特别适合需要长期演化的复杂系统,但对团队的设计能力和领域理解要求较高。
原创
博文更新于 2025.11.21 ·
1315 阅读 ·
17 点赞 ·
0 评论 ·
19 收藏

设计模式(六)适配器模式 — 让不兼容的接口“和睦相处”

适配器模式是解决接口不兼容问题的关键设计模式,在系统升级、多协议兼容等场景广泛应用。它通过转换接口实现新旧系统的无缝协作,核心原理是将不兼容接口调用转换为目标接口格式。适配器有三种实现方式:类适配器(继承)、对象适配器(组合,最常用)和接口适配器(抽象类)。典型应用场景包括支付系统迁移、协议转换、跨语言服务调用等,能有效降低代码改动风险,实现平滑过渡。需注意避免过度适配导致系统复杂度增加,且要区分适配器与工厂模式的不同用途。适配器的价值在于兼容而非性能优化,是架构演进中的重要过渡手段。
原创
博文更新于 2025.11.20 ·
937 阅读 ·
11 点赞 ·
1 评论 ·
10 收藏
加载更多