java 修饰符
Java语言提供了很多修饰符,主要分为以下两类:
- 访问修饰符
 - 非访问修饰符
 
判断修饰符是否存在
通过反射拿到对象的变量、方法等,有时候想知道某个变量是否被某个修饰符修饰。通过另外一个类:Modifier,我们就能判断修饰符是否存在。
实体类:
@Setter@Getterpublic class Response<T> {private static final String OK = "200";private static final String ERROR = "600";private static final String NO_AUTH = "607";@ApiModelProperty(value = "响应码", example = "200")private String code;@ApiModelProperty(value = "响应消息", example = "成功")private String msg;@ApiModelProperty(value = "响应体")private T data;}
测试:
Class<?> clazz = Class.forName(Response.class.getName());Field ok = clazz.getDeclaredField("OK");int okModifiers = ok.getModifiers();System.out.println("okModifiers是否是静态变量:" + Modifier.isStatic(okModifiers));Field code = clazz.getDeclaredField("code");int codeModifiers = code.getModifiers();System.out.println("codeModifiers是否是私有变量:"+ Modifier.isPrivate(codeModifiers) +", codeModifiers是否是静态变量:" + Modifier.isStatic(codeModifiers));
执行结果:
okModifiers是否是静态变量:truecodeModifiers是否是私有变量:true, codeModifiers是否是静态变量:false
