Previous | Next | Trail Map | The Reflection API | Examining Classes

Discovering Class Modifiers

A class declaration may include the following modifiers: public, abstract, or final. The class modifiers precede the class keyword in the class definition. In the following example, the class modifiers are public and final:
public final Coordinate {int x, int y, int z}
At run time, to identify the modifiers of a class you perform these steps:
  1. Invoke getModifiers upon a Class object to retrieve a set of modifiers.
  2. Check the modifiers by calling isPublic, isAbstract, and isFinal.
The following program identifies the modifiers of the String class.
import java.lang.reflect.*;
import java.awt.*;

class SampleModifier {

   public static void main(String[] args) {
      String s = new String();
      printModifiers(s);
   }

   public static void printModifiers(Object o) {
      Class c = o.getClass();
      int m = c.getModifiers();
      if (Modifier.isPublic(m))
         System.out.println("public");
      if (Modifier.isAbstract(m))
         System.out.println("abstract");
      if (Modifier.isFinal(m))
         System.out.println("final");
   }
}
The output of the sample program reveals that the modifiers of the String class are public and final:
public
final


Previous | Next | Trail Map | The Reflection API | Examining Classes