주석은 인터페이스 또는 추상 클래스를 통해 Java에서 정의되어 클래스, 메소드 또는 필드에 대한 메타데이터를 제공할 수 있습니다. 주석 유형으로서의 인터페이스: @MyAnnotation("Hello, world!")와 같은 java.lang.annotation.Annotation 인터페이스 구현 주석 유형으로서의 추상 클래스: @MyAnnotation과 같은 java.lang.annotation.Annotation 추상 클래스 확장 (값 "Hello, world!") 실제 사례: 주석을 사용하여 메서드 매개 변수를 확인합니다(예: @NotNull). 매개 변수가 null이 아닌지 확인합니다. 그렇지 않으면 예외가 발생합니다.
주석의 인터페이스 및 추상 클래스
주석은 Java에서 클래스, 메소드 및 필드에 대한 메타데이터를 컴파일러에 제공하는 데 사용됩니다. 인터페이스와 추상 클래스를 주석 유형으로 사용할 수 있으므로 주석에 대한 특정 제약 조건을 정의할 수 있습니다.
주석 유형의 인터페이스
인터페이스는 java.lang.annotation.Annotation
인터페이스를 구현하여 주석 유형으로 사용할 수 있습니다. 예: java.lang.annotation.Annotation
接口。例如:
public @interface MyAnnotation { String value(); }
使用这个注解:
@MyAnnotation("Hello, world!") public class MyClass {}
抽象类作为注解类型
抽象类也可以作为注解类型,通过扩展 java.lang.annotation.Annotation
抽象类。例如:
public abstract @interface MyAnnotation { String value(); }
使用这个注解:
@MyAnnotation(value="Hello, world!") public class MyClass {}
实战案例
在以下实战案例中,我们将使用注解来验证方法参数:
import java.lang.annotation.ElementType; import java.lang.annotation.Retention; import java.lang.annotation.RetentionPolicy; import java.lang.annotation.Target; @Retention(RetentionPolicy.RUNTIME) @Target(ElementType.PARAMETER) public @interface NotNull { } public class MyClass { public void myMethod(@NotNull String param) { // 验证参数 non-null if (param == null) { throw new IllegalArgumentException("参数不能为空!"); } // 使用参数... } }
使用这个注解:
public class Client { public static void main(String[] args) { MyClass myClass = new MyClass(); myClass.myMethod("Hello, world!"); } }
运行这段代码会抛出 IllegalArgumentException
,因为 myMethod
rrreee
java.lang.annotation.Annotation
추상을 확장하여 주석 유형으로 사용할 수도 있습니다. 수업. 예: 🎜rrreee🎜 이 주석을 사용하십시오: 🎜rrreee🎜🎜 실제 사례 🎜🎜🎜 다음 실제 사례에서는 주석을 사용하여 메소드 매개변수를 확인합니다. 🎜rrreee🎜 이 주석을 사용하십시오: 🎜rrreee🎜 이 코드를 실행하면 IllegalArgumentException 이유는 myMethod
메서드의 인수가 null이 아닌 값을 제공하지 않았기 때문입니다. 🎜위 내용은 Java 주석에 인터페이스 및 추상 클래스 적용의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!