zoukankan      html  css  js  c++  java
  • [2014-9-9]反射

    1.反射即是获取一个运行程序或其他程序的元数据

    2.type类是一个抽象类,不能被实例化,用来包含类型的数据

    Type t = myInstance.GetType();

    Type t =Typeof(myInstance);

    3.特性(attribute)

    特性是一种向程序集增加元数据的语言结构,特性片被方括号包围,其中是特性名和特性的参数列表

    Obsolete特性 将程序结构标注为过期

    Conditional特性 包含或者排斥特性方法的所有调用

     3.1多个特性

      独立特性相互重叠在一起,单个特性片段,特性之间用逗号分开。

     特性为字段和方法上的特性

     3.2自定义特性

     声明一个派生自 System.Attribute类 后缀为Attribuete结尾的名称

     建议声明为sealed特性类

     公共成员为 字段,属性,构造函数

      对于字段,声明指定了使用单个字符串的构造函数,对于方法,声明指定了使用了两个字符串的构造函数

      3.3 构造函数中位置参数和命名参数

      命名参数设置特性的字段或者属性的值

      [MyAttribute("class","Reliever=arr",ver="0.1")] 后面两个为命名参数

    4 IsDefined方法,检测某个特性是否应用于某个类

    t.IsDefined(typeof(MyAttribute),false)

    第一个参数 接受检查特性type对象

    第二个参数 是否搜素继承树来查找这个特性

    5 GetCustomAttribute 方法 返回应用到结构的特性的数组

    Object[] arr =t.GetCustomAttribute(false)

  • 相关阅读:
    jenkins使用
    pytest+allure生成接口自动化测试报告
    charles系列
    go语言安装使用
    go语言介绍
    Nginx
    python面试题-python相关
    pyhon全栈开发学习目录
    补充【第二章】supervisor守护进程保障服务
    python全栈开发基础【补充】python中列表排序,字典排序,列表中的字典排序
  • 原文地址:https://www.cnblogs.com/wuyuetian/p/3963555.html
Copyright © 2011-2022 走看看