Publish Your Article Here

What is single member annotation and how to process it?


  • Single member contatins only one member, and it is also kind of normal annotation.
  • The only difference we can make is the value assignment.
  • We can assign the value without specifing the member name as shown in the below example. This only works when we declare name of the member as value.

package com.java2novice.annotations;

import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.reflect.Method;

@interface MyAnnotn{
	String value();

public class MySingleMembAnnotation {

	public void myAnnotationTestMethod(){
		try {
			Class<? extends MySingleMembAnnotation> cls = this.getClass();
			Method mth = cls.getMethod("myAnnotationTestMethod");
			MyAnnotn myAnno = mth.getAnnotation(MyAnnotn.class);
			System.out.println("value: "+myAnno.value());
		} catch (SecurityException e) {
			// TODO Auto-generated catch block
		} catch (NoSuchMethodException e) {
			// TODO Auto-generated catch block
	public static void main(String a[]){
		MySingleMembAnnotation mat = new MySingleMembAnnotation();

<< Previous Program 

List Of All Annotation (Metadata) Programs:

  1. How to create basic custom annotation?
  2. What is Retention policy in java annotations?
  3. How to get annotations at runtime using java reflection?
  4. How to get all annotations from a class?
  5. How to assign default values to custom annotations?
  6. What is marker annotation and how to process it at runtime?
  7. Built-in Java Annotations: @Deprecated example
  8. Built-in Java Annotations: @Override example
  9. Built-in Java Annotations: @SuppressWarnings example
  10. What is single member annotation and how to process it?
Knowledge Centre
What is transient variable?
Transient variables cannot be serialized. During serialization process, transient variable states will not be serialized. State of the value will be always defaulted after deserialization.
Famous Quotations
It is amazing what you can accomplish if you do not care who gets the credit.
-- Harry Truman

About Author

I'm Nataraja Gootooru, programmer by profession and passionate about technologies. All examples given here are as simple as possible to help beginners. The source code is compiled and tested in my dev environment.

If you come across any mistakes or bugs, please email me to [email protected].

Most Visited Pages

Other Interesting Sites

Reference: Java™ Platform Standard Ed. 7 - API Specification | Java™ Platform Standard Ed. 8 - API Specification | Java is registered trademark of Oracle.
Privacy Policy | Copyright © 2018 by Nataraja Gootooru. All Rights Reserved.