參考鏈接
- //https://www.cnblogs.com/han1982/p/4874302.html 需要增加 | BindingFlags.Static 來獲取靜態私有方法
代碼如下
class Program
{
private static void Main(string[] args)
{
//通過反射來調私有的成員
Type type = typeof(Person);
//BindingFlags類型枚舉,BindingFlags.NonPublic | BindingFlags.Instance 組合才能獲取到private私有方法
MethodInfo methodInfo = type.GetMethod("SayHello", BindingFlags.NonPublic | BindingFlags.Instance | BindingFlags.Static);
object obj = Activator.CreateInstance(type); //通過反射類型創建實例對象
methodInfo.Invoke(obj, null);
Console.ReadKey();
}
}
public class Person
{
private static void SayHello()
{
Console.WriteLine("我是私有方法。");
Console.ReadKey();
}
}