Java-Modifier类常用方法详解
一、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类常用方法详解的更多相关文章
- Java-Method类常用方法详解
一.Method类的定义Method类位于 java.lang.reflect 包中,主要用于在程序运行状态中,动态地获取方法信息二.Method类的常用方法 1.getAnnotatedRetur ...
- JAVA中StringBuffer类常用方法详解
String是不变类,用String修改字符串会新建一个String对象,如果频繁的修改,将会产生很多的String对象,开销很大.因此java提供了一个StringBuffer类,这个类在修改字符串 ...
- Java 嵌套类基础详解
目录 1. 什么是嵌套类? 2. 为什么要使用嵌套类? 3. 嵌套类的类型 4. 静态嵌套类 5. 非静态嵌套类 5.1 成员内部类 5.2 局部内部类 5.3 匿名内部类 6. 嵌套接口 1. 什么 ...
- java Object类源代码详解 及native (转自 http://blog.csdn.net/sjw890821sjw/article/details/8058843)
package java.lang; public class Object { /* 一个本地方法,具体是用C(C++)在DLL中实现的,然后通过JNI调用.*/ private static na ...
- Java常用类StringBuffer详解
内容多为最近学习的自我总结,可能有些地方写的不严谨,甚至会有错误的地方,仅供参考,如发现错误敬请指出,谢谢! 灰色字体为补充扩展内容,多为帮助自己理解. StringBuffer概述: 线程安全的可变 ...
- Java常用类object详解
1.Object概述: 类Object是类层次结构的根类.每个类都使用Object作为超类.所有对象(包括数组)都实现这个类的方法. 2.构造方法详细信息: Object只有一个无参构造方法,因为ob ...
- StringUtils工具类常用方法详解
StringUtils 常用方法 1.isEmpty(String str) 是否为空,空格字符为false2.isNotEmpty(String str) 是否为非空,空格字符为true3.isBl ...
- Java的类的详解
首先呢,我承认上一次我理解的有误. 1.构造方法的作用:是初始化一个对象,而不是成员变量,它和get和set方法都有给成员变量赋值的功能. 2.下来说一下JVM调用main方法的过程: a.静态变量赋 ...
- 11-02 Java Object类使用详解
Object 作为超类 Object是类层次结构的根类,所有的类都直接或者间接的继承自Object类. Object类的构造方法有一个,并且是无参构造,这其实就是理解当时我们说过,子类构造方法默认访 ...
随机推荐
- 用 LinkedList 实现一个 java.util.Stack 栈
用 LinkedList 实现一个 java.util.Stack 栈 import java.util.LinkedList; public class Stack<E> { priva ...
- idea Autowired 提示红色的解决方式
- 记lombok@Data和@Builder一起用无法添加无参构造方法的坑
转自:https://blog.csdn.net/w605283073/article/details/89221853 今天和小伙伴讨论一个mybatis-plus的一个诡异问题,最后定位到原因竟然 ...
- C#利用控件mscomm32.ocx读取串口datalogic扫描枪数据
1).开发环境VS12,语言C# 2).扫描枪品牌:datalogic 4470 3).通讯协议:串口 1.首先,第一步创建一个新工程,windows窗体应用程序,命名为TestScanner,如下: ...
- 树莓派Raspbian系统密码
树莓派Raspbian系统密码 树莓派Raspbian系统默认登录用户名为pi,该账户默认密码是raspberry(可在raspi-config中修改). 树莓派的Raspbian系统root用户默认 ...
- vue + yarn 项目开发 (一)
1.打开src文件夹中的main.js文件,添加引用element ui框架 import ElementUI from 'element-ui' import 'element-ui/lib/the ...
- 17、在vue中引用移动端框架Vux:
1:使用vue-cli创建好项目(此处省略步骤)2:在项目中安装vux:npm install vux --save3:安装vux-loader:npm install vux-loader --s ...
- 关于web浏览器的Web SQL和IndexedDB
虽然在HTML5 WebStorage介绍了html5本地存储的Local Storage和Session Storage,这两个是以键值对存储的解决方案,存储少量数据结构很有用,但是对于大量结构化数 ...
- JCEF-tab形式展示浏览器
当我们点击target值为_blank的链接时,JCEF默认以弹出窗口的形式打开新页面,要实现tab栏形式,可参考以下步骤 1.创建一个实现CefLifeSpanHandlerAdapter的类,重写 ...
- odex vdex art区别
一.vdexpackage 直接转化的 可执行二进制码 文件:1.第一次开机就会生成在/system/app/<packagename>/oat/下:2.在系统运行过程中,虚拟机将其 从 ...