news 2026/4/15 8:20:07

哪些常量用枚举,哪些用类

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
哪些常量用枚举,哪些用类

枚举 vs 常量类的选择标准

使用枚举的情况

  1. 有限且固定的值集合

    • 如:[StatsTypeEnum](file://D:\Desktop\ai_wei\projects\F-XA-01\code\f-xa-01-api\f-xa-01-api-common\src\main\java\com\aiwei\common\enumeration\StatsTypeEnum.java#L7-L50)(平均值、方差、范围、幅度)
    • 如:星期几、月份、状态码等
  2. 需要类型安全的参数传递

    • 避免传入非法值
    • 编译时就能发现错误
  3. 需要遍历所有可能值

    • 使用values()方法获取所有枚举值
    • 如:下拉菜单选项、配置类型等
  4. 配合 switch 语句使用

    • 提供更好的 IDE 支持和类型检查

使用常量类的情况

  1. 单纯的键值对映射

    • 如:[MessageConstant](file://D:\Desktop\ai_wei\projects\F-XA-01\code\f-xa-01-api\f-xa-01-api-common\src\main\java\com\aiwei\common\constant\MessageConstant.java#L5-L84) 中的错误消息
    • 不需要类型安全检查的字符串或数字
  2. 配置信息或标识符

    • 如:数据库表名、API 端点、环境变量名
    • 值可能会动态变化
  3. 大量独立的常量

    • 没有关联性或逻辑分组
    • 不需要枚举的特殊方法(values()ordinal()等)
  4. 向后兼容性考虑

    • 已有大量代码使用字符串或数字常量
    • 不方便重构为枚举

您项目中的应用

  • [StatsTypeEnum](file://D:\Desktop\ai_wei\projects\F-XA-01\code\f-xa-01-api\f-xa-01-api-common\src\main\java\com\aiwei\common\enumeration\StatsTypeEnum.java#L7-L50)✓ 应该用枚举 - 固定的统计类型,需要类型安全
  • [MessageConstant](file://D:\Desktop\ai_wei\projects\F-XA-01\code\f-xa-01-api\f-xa-01-api-common\src\main\java\com\aiwei\common\constant\MessageConstant.java#L5-L84)✓ 适合用常量类 - 错误消息文本,不需要枚举特性
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/12 14:06:30

Langchain-Chatchat如何集成快捷键操作?效率提升技巧

Langchain-Chatchat如何集成快捷键操作?效率提升技巧 在企业级知识管理系统中,一个看似微不足道的交互细节——比如是否支持“Ctrl Enter 发送消息”——往往决定了用户是愿意每天使用它,还是用一次就弃之不用。随着本地大模型部署方案逐渐…

作者头像 李华
网站建设 2026/4/9 11:51:21

利用Langchain-Chatchat降低企业AI应用的数据泄露风险

利用Langchain-Chatchat降低企业AI应用的数据泄露风险 在金融、医疗和法律等行业,一份合同、一条病历或一纸合规文件的外泄,都可能引发连锁反应——监管处罚、客户流失、品牌声誉受损。而当这些敏感信息需要接入AI系统以实现智能问答时,传统基…

作者头像 李华
网站建设 2026/4/8 9:41:08

Open-AutoGLM支付异常深度排查(专家级故障手册曝光)

第一章:Open-AutoGLM支付异常概览在 Open-AutoGLM 系统的实际部署中,支付模块偶发出现交易状态不一致、回调失败或重复扣款等问题,严重影响用户体验与平台信誉。这些异常通常由网络抖动、第三方支付网关响应超时、消息队列堆积或本地事务处理…

作者头像 李华
网站建设 2026/4/10 13:50:32

FaceFusion在时尚走秀视频中的虚拟模特应用

FaceFusion在时尚走秀视频中的虚拟模特应用在巴黎时装周后台,化妆师正在为一位“模特”做最后的调整——但这位模特从未踏足现场。她是由AI生成的虚拟面孔,融合了品牌代言人的五官特征与专业T台模特的身姿,在4K高清镜头下自信地走过伸展台。这…

作者头像 李华
网站建设 2026/4/13 12:08:24

Open-AutoGLM多任务调度难题(冲突根源深度剖析与实战解决方案)

第一章:Open-AutoGLM多任务并行冲突概述在大规模语言模型的训练与推理过程中,Open-AutoGLM作为支持多任务自动学习的框架,面临多任务并行执行时的资源竞争与逻辑冲突问题。当多个任务共享同一模型参数或计算资源时,若缺乏有效的调…

作者头像 李华
网站建设 2026/4/15 0:55:08

【大模型系统稳定性突破】:如何实现Open-AutoGLM连续72小时零衰减运行

第一章:Open-AutoGLM长时运行性能下降优化概述在长时间运行场景下,Open-AutoGLM模型常因内存泄漏、缓存膨胀和计算图累积等问题导致推理延迟上升与资源占用持续增长。本章聚焦于识别性能衰减的关键路径,并提出系统性优化策略,以保…

作者头像 李华