Java如何获得类对象的修饰符?
package org.nhooo.example.reflect; import java.lang.reflect.Modifier; public class ClassModifier { public static void main(String[] args) { getClassModifier(String.class); getClassModifier(TestA.class); getClassModifier(TestB.class); } private static void getClassModifier(Class clazz) { int modifier = clazz.getModifiers(); //如果整数参数包含public修饰符,则返回true, //否则为假。 if (Modifier.isPublic(modifier)) { System.out.println(clazz.getName() + " class modifier is public"); } //如果整数参数包含protected修饰符,则返回true, //否则为假。 if (Modifier.isProtected(modifier)) { System.out.println(clazz.getName() + " class modifier is protected"); } //如果整型参数包含private修饰符,则返回true; //否则为假。 if (Modifier.isPrivate(modifier)) { System.out.println(clazz.getName() + " class modifier is private"); } //如果integer参数包含static修饰符,则返回true, //否则为假。 if (Modifier.isStatic(modifier)) { System.out.println(clazz.getName() + " class modifier is static"); } //如果整数参数包含final修饰符,则返回true, //否则为假。 if (Modifier.isFinal(modifier)) { System.out.println(clazz.getName() + " class modifier is final"); } //如果integer参数包含abstract修饰符,则返回true, //否则为假。 if (Modifier.isAbstract(modifier)) { System.out.println(clazz.getName() + " class modifier is abstract"); } } protected static final class TestA { } private abstract class TestB { } }