Java的常见注解

2023-12-20 12:31:00

在Java中,注解(Annotation)是一种元数据(metadata)形式,用于在代码中提供关于程序元素的额外信息。注解可以应用于类、方法、字段和其他程序元素,用于指导编译器、工具和运行时环境进行特定的操作。

以下是一些常见的Java注解及其用途:

1. **`@Override`:**
? ?- 用途:标识一个方法覆盖了父类的方法。如果希望覆盖父类的方法,但是拼写错误或者方法签名不匹配,编译器会发出警告。

? ?```java
? ?@Override
? ?public void myMethod() {
? ? ? ?// Override the method
? ?}
? ?```

2. **`@Deprecated`:**
? ?- 用途:标识一个类、方法或字段已经过时,不推荐使用。编译器会发出警告。

? ?```java
? ?@Deprecated
? ?public class OldClass {
? ? ? ?// Deprecated class
? ?}
? ?```

3. **`@SuppressWarnings`:**
? ?- 用途:抑制编译器警告,通常用于消除某些类型的警告信息。

? ?```java
? ?@SuppressWarnings("unchecked")
? ?public List<String> getOldList() {
? ? ? ?// Suppress unchecked warning
? ?}
? ?```

4. **`@FunctionalInterface`:**
? ?- 用途:标识一个接口是函数式接口,即只包含一个抽象方法的接口。用于支持Lambda表达式。

? ?```java
? ?@FunctionalInterface
? ?public interface MyFunctionalInterface {
? ? ? ?void myMethod();
? ?}
? ?```

5. **`@Entity`(JPA注解):**
? ?- 用途:标识一个类是JPA实体,与数据库表映射。

? ?```java
? ?@Entity
? ?public class User {
? ? ? ?// JPA entity class
? ?}
? ?```

6. **`@Autowired`(Spring注解):**
? ?- 用途:在Spring中用于自动注入依赖。

? ?```java
? ?@Service
? ?public class MyService {
? ? ? ?@Autowired
? ? ? ?private MyRepository repository;
? ?}
? ?```

7. **`@Test`(JUnit注解):**
? ?- 用途:标识一个测试方法。

? ?```java
? ?@Test
? ?public void testMethod() {
? ? ? ?// Test method
? ?}
? ?```

8. **自定义注解:**
? ?- 用途:通过`@interface`关键字,可以创建自定义注解,用于在代码中添加自定义的元数据。

? ?```java
? ?@Retention(RetentionPolicy.RUNTIME)
? ?@Target(ElementType.METHOD)
? ?public @interface MyAnnotation {
? ? ? ?String value() default "default value";
? ?}
? ?```

以上只是Java中一些常见的注解,实际上有很多不同的注解用于支持各种框架和工具。注解为Java提供了更丰富的元编程能力,使得代码可以更灵活、清晰地表达出开发者的意图。

文章来源:https://blog.csdn.net/m0_65037354/article/details/135092995
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。