当前位置: 首页 > news >正文

货物公司网站建设方案济南网站优化排名

货物公司网站建设方案,济南网站优化排名,潮州网站设计,做收费网站ava 中的 Enum(枚举)是一种特殊的数据类型,用于定义一组固定的常量。 基本用法 使用关键字enum进行定义,通常包含一组命名的常量。每个枚举常量都是枚举类型的一个实例。 例如: public enum Day{MONDAY, TUESDAY, W…

ava 中的 Enum(枚举)是一种特殊的数据类型,用于定义一组固定的常量。

基本用法

使用关键字enum进行定义,通常包含一组命名的常量。每个枚举常量都是枚举类型的一个实例
例如:

public enum Day{MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY, SUNDAY
}

上述示例就是Day是一个枚举类型,枚举常量是Day类型的实例。

枚举的特性

类型安全:枚举提供了类型安全,不能随意赋值,只能使用枚举中定义的常量。

实例方法:枚举可以包含方法,包括实例方法和静态方法。

构造函数:枚举可以有构造函数,但不能使用 new 关键字实例化枚举类型。

实现接口:枚举可以实现接口,从而提供更多的功能。

枚举集合:Java 提供了 EnumSet 和 EnumMap 等集合类,专门用于处理枚举类型

使用枚举定义错误状态码

枚举非常适合用于定义错误状态码。通过枚举,可以将错误码集中管理,提高代码的可读性和可维护性。以下是一个使用枚举定义错误状态码的示例:

public enum ErrorCode {// 定义常见的错误状态码SUCCESS(200, "success"),BAD_REQUEST(400, "Bad request"),UNAUTHORIZED(401, "Unauuthorized"),FORBIDDEN(403, "Forbidden"),NOT_FOUND(404, "Not Found"),INTERNAL_SEVER_ERROR(500, "Internal Server Error");// 定义属性private final int code; // 错误码private final String message; // 错误信息// 构造函数ErrorCode(int code, String message){this.code = code;this.message = message;}// 获取错误码public int getCode(){return code;}// 获取错误信息public String getMessage() {return message;}// 根据错误码查找对应的枚举实例public static ErrorCode fromCode(int code){// 遍历枚举常量进行查找for (ErrorCode errorCode : ErrorCode.values()){if (errorCode.getCode() == code){retrun errorCode;}}throw new IllegalArgumentException("Invalid error code: " + code);}
}

在方法中返回错误状态

public class UserService {public ErrorCode login(String username, String password) {if (username == null || password == null) {return ErrorCode.BAD_REQUEST;}// 模拟用户验证逻辑if (!isValidUser(username, password)) {return ErrorCode.UNAUTHORIZED;}return ErrorCode.SUCCESS;}private boolean isValidUser(String username, String password) {// 实际验证逻辑return "admin".equals(username) && "password".equals(password);}
}

处理错误状态

public class Main {public static void main(String[] args) {UserService userService = new UserService();ErrorCode result = userService.login("admin", "wrong_password");switch (result) {case SUCCESS:System.out.println("Login successful!");break;case UNAUTHORIZED:System.out.println("Login failed: " + result.getMessage());break;case BAD_REQUEST:System.out.println("Invalid input: " + result.getMessage());break;default:System.out.println("Unexpected error: " + result.getMessage());}}
}

通过枚举定义错误状态码,可以使代码更加清晰、安全和易于维护。

http://www.dtcms.com/a/499777.html

相关文章:

  • 论坛网站建设视频教程沈阳专业网站建设
  • 项目1:队列的讲解(下):C++多线程队列使用
  • web自动化测试——Excel表格数据提取
  • nerfstudio使用colmap处理图像数据的小问题
  • SQL 中的 UCASE() 函数详解
  • 中国互联网协会网站爱客crm系统
  • 企业网站导航栏高度58同城最新招聘网找工作招聘信息
  • [AI 学习日记] 深入解析MCP —— 从基础配置到高级应用指南
  • Linux 系统中修改主机名
  • 网站建设公司968青岛工程有限公司
  • makefile - NXP - busybox环境下makefile中调用系统命令的方法
  • 13 pyflink/scala 进行 csv 文件的批处理
  • java ThreadPoolExecurtor源码解读 --- Worker
  • 20251018在ubuntu24.04下解压缩gz压缩包
  • 做赚钱的网站有哪些园林绿化
  • 静态网站开发用到的技术产品报价网
  • 【小学教辅】新版一年级上册语文第四单元课课贴 一年级语文复韵母学习资料 小学拼音考点练习电子版可下载打印|夸克网盘
  • 企业网站空间不足怎么办商标设计logo免费生成器网站
  • python 字典 列表 类比c++【python】
  • plsql developer 无法跟踪调试
  • Collections 工具类 15 个常用方法源码:sort、binarySearch、reverse、shuffle、unmodifiableXxx
  • mb与使用场景
  • 建设通网站是什么时间成立加入google广告wordpress
  • AI Coding 基础实践01 - TickTalk的MarsCode-Trae AI(Trae 插件)在Pycharm中的配置
  • [SCADE编译原理] 因果性分析原理(2001)
  • 网站建设pc指什么软件佛山新网站建设策划
  • RDEx:一种效果驱动的混合单目标优化器,自适应选择与融合多种算子与策略
  • JavaScript学习第三天:运算符
  • C++进阶之操作符重载函数operator[]:用法实例(四百三十五)
  • 《小白学随机过程》第一章:随机过程——定义和形式(附录2. 随机变量和随机过程公式解读)