Get Modifiers of an Object using Reflection

This example demonstrates how to get the modifiers used in a class using the reflection API. One can use the getModifiers() method in the Class object to know about each modifier used in that specific class. Call isAbstract(int mod), isFinal(int mod), isInterface(int mod), isNative(int mod), isPrivate(int mod), isProtected(int mod), isPublic(int mod) and isStatic(int mod) methods to know about each modifier.

Lets look at the example below to print the modifiers used in java.lang.Math class.


import java.lang.reflect.Modifier;

 * Get Modifiers of a class using Reflection API
 * @author krishna
public class JavaBeatReflectionExample {
	public static void main(String[] args) throws Exception {
		Class<?> clazz = java.lang.Math.class;
		// return the modifiers for this class or interface encoded in an integer
		int mod = clazz.getModifiers();
		System.out.println("Interface Modifier: " + Modifier.isInterface(mod));
		System.out.println("Static Modifier: " + Modifier.isStatic(mod));
		System.out.println("Abstract Modifier: " + Modifier.isAbstract(mod));
		System.out.println("Final Modifier: " + Modifier.isFinal(mod));
		System.out.println("Native Modifier: " + Modifier.isNative(mod));
		System.out.println("Private Modifier: " + Modifier.isPrivate(mod));
		System.out.println("Protected Modifier: " + Modifier.isProtected(mod));
		System.out.println("Public Modifier: " + Modifier.isPublic(mod));



Interface Modifier: false
Static Modifier: false
Abstract Modifier: false
Final Modifier: true
Native Modifier: false
Private Modifier: false
Protected Modifier: false
Public Modifier: true

Leave a Reply

Your email address will not be published. Required fields are marked *

Pin It on Pinterest

Share This

Share this post with your friends!