Java基础:枚举与注解详解
需积分: 6 48 浏览量
更新于2024-08-05
收藏 27KB DOCX 举报
本篇Java基础笔记主要关注了Java SE中的两个重要主题:枚举类和注解。首先,我们来探讨枚举类:
1. **枚举类的定义**:Java中,枚举(enum)是用于创建具有固定值的类。自定义枚举类是通过使用`enum`关键字定义,这些类本质上继承自`java.lang.Enum`类。这使得枚举在编码时可以确保变量只能取预定义的几个值,提高了代码的可读性和一致性。
2. **类中常用方法**:枚举提供了如`values()`和`valueOf()`等方法。`values()`方法返回一个包含所有枚举常量的数组,而`valueOf()`是一个静态方法,根据给定的字符串查找对应的枚举实例。
3. **实现接口**:枚举不仅可以作为类使用,还可以实现接口。可以通过两种方式实现:一是普通方式,直接为每个枚举常量添加接口方法;二是让每个枚举对象覆盖接口方法,从而实现特定的功能。
接着,我们转向注解:
**注解**在Java中主要用于提供元数据,对源代码进行额外的信息标记,增强了代码的可读性和可维护性。其主要作用包括:
- **文档生成**:注解可以为编译器生成文档,帮助其他开发者理解代码含义。
- **编译时检查**:注解可以在编译阶段检查代码的合规性,如@Deprecated用于标记过时的方法或类。
- **配置和依赖跟踪**:注解可用于配置项,以及在编译时检查代码依赖关系。
1. **JDK内置注解**:包括`@Override`、`@Deprecated`、`@SuppressWarnings`等,这些都是在日常开发中常见的元数据标记。
2. **自定义注解**:允许开发者创建自己的注解类型,通过无参数方法定义配置参数,支持的基本数据类型、字符串、类、枚举、注解以及数组类型。默认值可以通过`default`关键字设置,单参数注解可以省略括号中的`k=v`。
最后,我们通过一个示例来展示注解的使用:
```java
public class Gvim4Java20210418 {
public static void main(String[] args) {
System.out.println(Season.SPRING);
System.out.println(Season.SUMMER);
}
}
enum Season {
SUMMER("夏天"),
SPRING("春天");
private String seasonName;
private Season(String seasonName) {
this.seasonName = seasonName;
}
// 使用自定义注解
@Deprecated // 表示该季节已过时
@SeasonType // 自定义注解类型,用于记录季节类型
public String getSeason() {
return seasonName;
}
}
```
在这个例子中,`Season`枚举被标注了`@Deprecated`,表示它可能不再推荐使用。同时,`getSeason`方法上使用了自定义的`@SeasonType`注解,以附加更多的信息。
总结来说,这篇笔记详细介绍了Java枚举类和注解的基础概念,包括它们的定义、方法、使用场景,以及注解的作用和自定义注解的特性。掌握这些内容对于理解Java编程语言的元数据管理和代码组织至关重要。
2017-10-25 上传
2021-12-04 上传
2023-03-07 上传
岚i
- 粉丝: 9
- 资源: 15
最新资源
- 前端协作项目:发布猜图游戏功能与待修复事项
- Spring框架REST服务开发实践指南
- ALU课设实现基础与高级运算功能
- 深入了解STK:C++音频信号处理综合工具套件
- 华中科技大学电信学院软件无线电实验资料汇总
- CGSN数据解析与集成验证工具集:Python和Shell脚本
- Java实现的远程视频会议系统开发教程
- Change-OEM: 用Java修改Windows OEM信息与Logo
- cmnd:文本到远程API的桥接平台开发
- 解决BIOS刷写错误28:PRR.exe的应用与效果
- 深度学习对抗攻击库:adversarial_robustness_toolbox 1.10.0
- Win7系统CP2102驱动下载与安装指南
- 深入理解Java中的函数式编程技巧
- GY-906 MLX90614ESF传感器模块温度采集应用资料
- Adversarial Robustness Toolbox 1.15.1 工具包安装教程
- GNU Radio的供应商中立SDR开发包:gr-sdr介绍