zoukankan      html  css  js  c++  java
  • C# 反射

            public static void CallPrivateMethod(object instance, string name, params object[] param)
            {
                BindingFlags flag = BindingFlags.Instance | BindingFlags.NonPublic;
                Type type = instance.GetType();
                MethodInfo method = type.GetMethod(name, flag);
                method.Invoke(instance, param);
            }

    转自 https://segmentfault.com/q/1010000007608935?_ea=1398469

                var request = (HttpWebRequest)WebRequest.Create("https://");
    
                CallPrivateMethod(request, "SetSpecialHeaders", "AAAAAAAA", DateTime.Now.ToString("R"));
        //获得字节码文件对象
            Class  c =  Class.forName("reflect.Demo");
            //获取到带参数的构造对象
            Constructor  d =  c.getConstructor(int.class);
            //通过Class里的newInstance() 创建对象
            //Demo d = (Demo)c.newInstance();
    
            Demo  dd= (Demo) d.newInstance(1); 
            //获取到方法的对象
            Method  m = c.getMethod("print",String.class);
            Method m1 = c.getDeclaredMethod("show",int.class);
            //调用即可
            m.invoke(dd,"hh");
            //私有的设置显示即可
            m1.setAccessible(true);
            m1.invoke(dd, 1);
    
    
        }
    
    }
    class Demo {
        public Demo(){}
        public Demo(int x) {
        }
        private void show(int a) {
            System.out.println(1111);
        }
        public void print(String str ){
            System.out.println("Hello "+str);
        }
    }
    
    原文链接:https://blog.csdn.net/qq_35257397/article/details/52746105
  • 相关阅读:
    CSUST 4005-你真的会!(分治思维+线段树)
    CSUST 4007-你真的会图论吗?(思维-三元环)
    CSUST 4002-你真的会字符串吗?(DP)
    Odoo下拉动作列表
    Odoo Shell
    Odoo report
    Odoo Web Service API
    Odoo启动过程
    Odoo10 变化
    Odoo10尝鲜:出勤登记
  • 原文地址:https://www.cnblogs.com/enych/p/11922377.html
Copyright © 2011-2022 走看看