news 2026/6/22 11:41:40

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

作者头像

张小明

前端开发工程师

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/6/22 19:01:15

【RUST】学习笔记-整型

打不过就加入: C今天已经40年,我用C编程也已15年。虽然网上有很多看衰C的看法,但我始终坚信C会有它顽强的生命力。 但最近看到RUST已经在Linux转正了,所以我打算加入RUST,看看它到底有何魔力。 另外也是为了水点文章&a…

作者头像 李华
网站建设 2026/6/20 2:11:32

【Open-AutoGLM vs AppAgent】:谁才是真正具备自主学习能力的AI代理?

第一章:谁才是真正具备自主学习能力的AI代理?在人工智能快速演进的当下,"自主学习"已成为衡量AI代理智能水平的核心标准。真正具备自主学习能力的AI代理,不应仅依赖预设规则或静态训练数据,而应在动态环境中…

作者头像 李华
网站建设 2026/6/21 3:56:11

Open-AutoGLM连接异常怎么办:3种高发场景+4个关键修复命令

第一章:Open-AutoGLM WiFi 连接不稳定排查在部署 Open-AutoGLM 设备时,WiFi 连接不稳定是常见问题之一,可能影响模型推理与远程调用的实时性。该问题通常由信号干扰、配置错误或驱动兼容性引起,需系统性地进行诊断与修复。检查无线…

作者头像 李华
网站建设 2026/6/18 16:54:42

Langchain-Chatchat与Jaeger分布式追踪系统集成

Langchain-Chatchat 与 Jaeger 分布式追踪集成实践 在企业级 AI 应用日益复杂的今天,一个看似简单的“提问-回答”交互背后,可能隐藏着数十个模块的协同工作:文档解析、文本切片、向量检索、上下文拼接、模型推理……当这套流程部署在本地环境…

作者头像 李华
网站建设 2026/6/22 5:28:03

账号总被盯上?Open-AutoGLM安全加固9大实操技巧,现在不做就晚了

第一章:Open-AutoGLM账号安全现状与威胁分析近年来,随着自动化大语言模型(AutoGLM)平台的广泛应用,Open-AutoGLM作为开源社区中的重要组成部分,其账号安全问题日益凸显。大量开发者依赖该平台进行模型训练、…

作者头像 李华