java开发常用注解
时间: 2024-08-12 08:08:43 浏览: 52
在Java中,注解(Annotations)是一种元数据,它们提供了一种为源代码添加额外信息的方式,这些信息可以被编译器、工具或运行时环境使用。Java开发中常用的注解主要包括以下几个类别:
1. **编译时注解**:
- `@Override`: 表示方法重写父类的方法,编译器会检查是否真的覆盖了基类的方法。
- `@Deprecated`: 标记为过时的方法或字段,提醒开发者应该替换为其他功能。
- `@SuppressWarnings`: 忽略特定的编译器警告。
2. **访问控制注解**:
- `@VisibleForTesting`: 通常用于测试代码中,标记部分代码为只对测试可见。
- `@PackagePrivate`: 对于包级别的可见性,限制在同一个包内的类可以访问。
3. **类型安全注解**:
- `@Autowired`: Spring框架中的注解,用于自动装配bean。
- `@FunctionalInterface`: 定义函数式接口,表明该接口只有一个抽象方法。
4. **编译期和运行期注解处理器(Annotation Processors)**:
- `@Retention`: 指定注解应该在哪些阶段保留,如SOURCE(源代码级别)、CLASS(编译后)或RUNTIME(运行时)。
- `@Target`: 指定注解可以应用到哪些元素,如TYPE、FIELD、METHOD等。
5. **JPA注解**:
- `@Entity`: 表示持久化实体类。
- `@Table`: 定义表映射相关的属性。
- `@Column`: 定义数据库列的映射。
6. **JSON注解**:
- `@JsonProperty`: Jackson框架用来标记JSON属性的注解。
- `@JsonInclude`: 控制哪些字段在序列化或反序列化时包含或忽略。
7. **日志注解**:
- `@Log4j2`: 使用Log4j2时,标记需要记录的日志点。
相关问题--:
1. Java中的`@Deprecated`注解有什么作用?
2. `@Autowired`注解在Spring框架中的具体用途是什么?
3. 如何在Java中创建自定义注解并使用注解处理器?
阅读全文