关于反射的BindingFlag浅析

Posted 夜月天

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了关于反射的BindingFlag浅析相关的知识,希望对你有一定的参考价值。

MSDN关于BindingFlag的文档地址:https://msdn.microsoft.com/zh-cn/library/cexkb29a

BindFlags作为一个特别的标志量,在反射中通过这个标志量,可以指定搜索不同类型的成员。

public或nonpublic必须与 instance或static 一起使用,否则将不返回任何成员。

例如:

PropertyInfo[] p=type.GetProperties(BindingFlags.Public | BindingFlags.Instance);

相关部分的组合说明:

组合 说明
BindingFlag.Public | BindingFlags.Instance 指定Public修饰的实例成员
BindingFlag.Public | BindingFlags.Static 指定Public修饰 的静态成员
BindingFlag.NonPublic | BindingFlags.Instance 指定private/protect/internal 修饰的实例成员
BindingFlag.NonPublic | BindingFlags.Static 指定private/protect/internal修饰 的静态成员
BindingFlag.Public | BindingFlags.Static | BindingFlags.Instance 指定public修饰的静态成员和实例成员
BindingFlag.NonPublic | BindingFlags.Static | BindingFlags.Instance 指定private/protect/internal修饰 的静态成员和实例成员

 

以上是关于关于反射的BindingFlag浅析的主要内容,如果未能解决你的问题,请参考以下文章

动态代理之JDK Proxy浅析

浅析Java反射机制

Java反射机制浅析

反射浅析

java中的反射机制浅析

java浅析反射