diff --git a/core-java-modules/core-java-annotations/src/main/java/com/baeldung/annotations/AnnotatedClass.java b/core-java-modules/core-java-annotations/src/main/java/com/baeldung/annotations/AnnotatedClass.java new file mode 100644 index 0000000000..7825b400df --- /dev/null +++ b/core-java-modules/core-java-annotations/src/main/java/com/baeldung/annotations/AnnotatedClass.java @@ -0,0 +1,8 @@ +package com.baeldung.annotations; + +import javax.annotation.Generated; + +@RetentionAnnotation +@Generated("Avilable only on source code") +public class AnnotatedClass { +} diff --git a/core-java-modules/core-java-annotations/src/main/java/com/baeldung/annotations/RetentionAnnotation.java b/core-java-modules/core-java-annotations/src/main/java/com/baeldung/annotations/RetentionAnnotation.java new file mode 100644 index 0000000000..4591334dde --- /dev/null +++ b/core-java-modules/core-java-annotations/src/main/java/com/baeldung/annotations/RetentionAnnotation.java @@ -0,0 +1,12 @@ +package com.baeldung.annotations; + +import java.lang.annotation.Retention; +import java.lang.annotation.RetentionPolicy; +import java.lang.annotation.Target; + +import static java.lang.annotation.ElementType.TYPE; + +@Target(TYPE) +@Retention(RetentionPolicy.RUNTIME) +public @interface RetentionAnnotation { +} \ No newline at end of file diff --git a/core-java-modules/core-java-annotations/src/test/java/com/baeldung/annotations/AnnotatedClassUnitTest.java b/core-java-modules/core-java-annotations/src/test/java/com/baeldung/annotations/AnnotatedClassUnitTest.java new file mode 100644 index 0000000000..9bf0b78cbb --- /dev/null +++ b/core-java-modules/core-java-annotations/src/test/java/com/baeldung/annotations/AnnotatedClassUnitTest.java @@ -0,0 +1,18 @@ +package com.baeldung.annotations; + +import org.junit.Test; + +import java.lang.annotation.Annotation; + +import static org.hamcrest.core.Is.is; +import static org.junit.Assert.assertThat; + +public class AnnotatedClassUnitTest { + + @Test + public void whenAnnotationRetentionPolicyRuntime_shouldAccess() { + AnnotatedClass anAnnotatedClass = new AnnotatedClass(); + Annotation[] annotations = anAnnotatedClass.getClass().getAnnotations(); + assertThat(annotations.length, is(1)); + } +}