一、Modifier类的定义

Modifier类 (修饰符工具类) 位于 java.lang.reflect 包中,用于判断和获取某个类、变量或方法的修饰符
Modifier类将各个修饰符表示为相对应的整数,在源码中用16进制进行表示
静态常量
public:Modifier.PUBLIC (0x00000001) (1)
private:Modifier.PRIVATE (0x00000002) (2)
protected:Modifier.PROTECTED (0x00000004) (4)
static:Modifier.STATIC (0x00000008) (8)
final:Modifier.FINAL (0x00000010) (16)
synchronized:Modifier.SYNCHRONIZED(0x00000020) (32)
volatile:Modifier.VOLATILE(0x00000040) (64)
transient:Modifier.TRANSIENT(0x00000080) (128)
native:Modifier.NATIVE(0x00000100) (256)
interface:Modifier.INTERFACE(0x00000200) (512)
abstract:Modifier.ABSTRACT(0x00000400) (1024)
strict:Modifier.STRICT(0x00000800) (2048)
二、Modifier类的常用方法

1、Modifier.toString(int mod)

返回一个字符串,该字符串表示该整数参数所代表的修饰符
通过 & 运算,来确定所代表的修饰符
例如:7的二进制表示为111
& 上 Modifier.PUBLIC 的值 (0x00000001) 不为0,则说明有public修饰符
& 上 Modifier.PRIVATE 的值 (0x00000002) 不为0,则说明有private修饰符
& 上 Modifier.PROTECTED 的值 (0x00000004) 不为0,则说明有protected修饰符
System.out.println(Modifier.toString(1)); // public
System.out.println(Modifier.toString(3)); // public private
System.out.println(Modifier.toString(7)); // public private protected
1
2
3
源码如下

2、Modifier.constructorModifiers()

返回可用于修饰构造方法的修饰符所代表的整数
构造方法修饰符:public、protected、private
System.out.println(Modifier.constructorModifiers()); // 7
// public protected private
System.out.println(Modifier.toString(Modifier.constructorModifiers()));
1
2
3
  3、Modifier.classModifiers()

返回可用于修饰类的修饰符所代表的整数
类修饰符:public、protected、private、abstract、static、final、strictfp
System.out.println(Modifier.classModifiers()); // 3103
// public protected private abstract static final strictfp
System.out.println(Modifier.toString(Modifier.classModifiers()));
1
2
3

---------------------
作者:Gene Xu
来源:CSDN
原文:https://blog.csdn.net/goodbye_youth/article/details/83040766
版权声明:本文为博主原创文章,转载请附上博文链接!

Java-Modifier类常用方法详解的更多相关文章

  1. Java-Method类常用方法详解

    一.Method类的定义Method类位于 java.lang.reflect 包中,主要用于在程序运行状态中,动态地获取方法信息二.Method类的常用方法  1.getAnnotatedRetur ...

  2. JAVA中StringBuffer类常用方法详解

    String是不变类,用String修改字符串会新建一个String对象,如果频繁的修改,将会产生很多的String对象,开销很大.因此java提供了一个StringBuffer类,这个类在修改字符串 ...

  3. Java 嵌套类基础详解

    目录 1. 什么是嵌套类? 2. 为什么要使用嵌套类? 3. 嵌套类的类型 4. 静态嵌套类 5. 非静态嵌套类 5.1 成员内部类 5.2 局部内部类 5.3 匿名内部类 6. 嵌套接口 1. 什么 ...

  4. java Object类源代码详解 及native (转自 http://blog.csdn.net/sjw890821sjw/article/details/8058843)

    package java.lang; public class Object { /* 一个本地方法,具体是用C(C++)在DLL中实现的,然后通过JNI调用.*/ private static na ...

  5. Java常用类StringBuffer详解

    内容多为最近学习的自我总结,可能有些地方写的不严谨,甚至会有错误的地方,仅供参考,如发现错误敬请指出,谢谢! 灰色字体为补充扩展内容,多为帮助自己理解. StringBuffer概述: 线程安全的可变 ...

  6. Java常用类object详解

    1.Object概述: 类Object是类层次结构的根类.每个类都使用Object作为超类.所有对象(包括数组)都实现这个类的方法. 2.构造方法详细信息: Object只有一个无参构造方法,因为ob ...

  7. StringUtils工具类常用方法详解

    StringUtils 常用方法 1.isEmpty(String str) 是否为空,空格字符为false2.isNotEmpty(String str) 是否为非空,空格字符为true3.isBl ...

  8. Java的类的详解

    首先呢,我承认上一次我理解的有误. 1.构造方法的作用:是初始化一个对象,而不是成员变量,它和get和set方法都有给成员变量赋值的功能. 2.下来说一下JVM调用main方法的过程: a.静态变量赋 ...

  9. 11-02 Java Object类使用详解

     Object 作为超类 Object是类层次结构的根类,所有的类都直接或者间接的继承自Object类. Object类的构造方法有一个,并且是无参构造,这其实就是理解当时我们说过,子类构造方法默认访 ...

随机推荐

  1. 用 LinkedList 实现一个 java.util.Stack 栈

    用 LinkedList 实现一个 java.util.Stack 栈 import java.util.LinkedList; public class Stack<E> { priva ...

  2. idea Autowired 提示红色的解决方式

  3. 记lombok@Data和@Builder一起用无法添加无参构造方法的坑

    转自:https://blog.csdn.net/w605283073/article/details/89221853 今天和小伙伴讨论一个mybatis-plus的一个诡异问题,最后定位到原因竟然 ...

  4. C#利用控件mscomm32.ocx读取串口datalogic扫描枪数据

    1).开发环境VS12,语言C# 2).扫描枪品牌:datalogic 4470 3).通讯协议:串口 1.首先,第一步创建一个新工程,windows窗体应用程序,命名为TestScanner,如下: ...

  5. 树莓派Raspbian系统密码

    树莓派Raspbian系统密码 树莓派Raspbian系统默认登录用户名为pi,该账户默认密码是raspberry(可在raspi-config中修改). 树莓派的Raspbian系统root用户默认 ...

  6. vue + yarn 项目开发 (一)

    1.打开src文件夹中的main.js文件,添加引用element ui框架 import ElementUI from 'element-ui' import 'element-ui/lib/the ...

  7. 17、在vue中引用移动端框架Vux:

    1:使用vue-cli创建好项目(此处省略步骤)2:在项目中安装vux:npm install vux --save3:​安装vux-loader:npm install vux-loader --s ...

  8. 关于web浏览器的Web SQL和IndexedDB

    虽然在HTML5 WebStorage介绍了html5本地存储的Local Storage和Session Storage,这两个是以键值对存储的解决方案,存储少量数据结构很有用,但是对于大量结构化数 ...

  9. JCEF-tab形式展示浏览器

    当我们点击target值为_blank的链接时,JCEF默认以弹出窗口的形式打开新页面,要实现tab栏形式,可参考以下步骤 1.创建一个实现CefLifeSpanHandlerAdapter的类,重写 ...

  10. odex vdex art区别

    一.vdexpackage 直接转化的 可执行二进制码 文件:1.第一次开机就会生成在/system/app/<packagename>/oat/下:2.在系统运行过程中,虚拟机将其 从 ...