codescracker


java

Java Marker Annotation



« Previous Tutorial Next Tutorial »


A marker annotation is a special type of annotation which contains no members. Its only purpose is to mark an item. Therefore, its presence as an annotation is sufficient. The best way to determine if a marker annotation is present is to use the method named isAnnotationPresent(), which is defined by the AnnotatedElement interface.

Java Marker Annotation Example

Following is an example that uses a marker annotation. As a marker interface contains no members, simply determining whether it is present or absent is sufficient.

/* Java Program Example - Java Marker Annotation */

import java.lang.annotation.*;
import java.lang.reflect.*;

/* marker annotation */
@Retention(RetentionPolicy.RUNTIME)
@interface MyMarker { }

class Marker {
	/* annotate the method using marker.
	*  Notice that no { } is needed 
	*/
	@MyMarker
	public static void myMethod() {
		Marker obj = new Marker();
		
		try {
		
			Method m = obj.getClass().getMethod("myMethod");
			
			/* specify if the annotation is present */
			if(m.isAnnotationPresent(MyMarker.class))
			   System.out.println("MyMarker is present");
			   
		} catch(NoSuchMethodException exc) {
		
			System.out.println("Method not found..!!");
		}
	}
	
	public static void main(String args[])
	{
	
		myMethod();
		
	}
}

The output of the above Java program shown below, confirms that the @MyMarker is present :

MyMarker is present

In the above program, notice that you do not need to follow the @MyMarker with parentheses when it is applied. Thus, the @MyMarker is applied by using its name, like :

@MyMarker

It is now wrong to supply an empty set of parentheses, but they are not needed.


« Previous Tutorial Next Tutorial »



Tools
Calculator

Quick Links
Signup - Login - Give Online Test