zoukankan      html  css  js  c++  java
  • Reflaction很嚣张的功能

    这几天在看《Visual.Basic.dot.NET.Business.Objects》一书,里面有几招挺牛的,记录下来。

    1、即使一个类的contructor是private的,也可以用以下方法构造之:

      Activator.CreateInstance(GetType(Customer), True)



    2、用Reflection调用一个对象的方法也是一个很嚣张的功能

         #Region " Calling a method "

           Private Function GetMethod(ByVal ObjectType As Type, _
                                      ByVal Method As String) As MethodInfo

             Return ObjectType.GetMethod(Method, BindingFlags.FlattenHierarchy Or _
                                                 BindingFlags.Instance Or _
                                                 BindingFlags.Public Or _
                                                 BindingFlags.NonPublic)
           End Function

         #End Region


         Private Function CallMethod(ByVal obj As Object, _
                                     ByVal method As String, _
                                     ByVal ParamArray params() As Object) As Object

           ' Call a private method on the object
           Dim info As MethodInfo = GetMethod(obj.GetType, method)
           Dim result As Object
           Try
             result = info.Invoke(obj, params)
           Catch e As Exception
             Throw e.GetBaseException
           End Try

           Return result

         End Function

  • 相关阅读:
    c# gdi设置画刷透明
    char,varchar,nvarchar,text区别与联系
    banner无缝轮播【小封装】
    div中的内容垂直居中的五种方法
    jQuery hover() 方法
    年过三十,我为什么要学习ios 与安卓App 移动端技术
    CentOS 中用 Split 命令分割文件的方法
    centos E440 安装无线网卡
    CentOS7修改默认运行级别
    iwconfig: command not found 解决方案
  • 原文地址:https://www.cnblogs.com/JLL/p/149073.html
Copyright © 2011-2022 走看看