iis服务器助手广告广告
返回顶部
首页 > 资讯 > 精选 >C#反射访问属性规范有哪些
  • 593
分享到

C#反射访问属性规范有哪些

2023-06-17 23:06:10 593人浏览 八月长安
摘要

本篇文章给大家分享的是有关C#反射访问属性规范有哪些,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。C#反射——属性规范C#[Author("H. Acker

本篇文章给大家分享的是有关C#反射访问属性规范有哪些,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。

C#反射——属性规范

C#

[Author("H. Ackerman", version = 1.1)]  class SampleClass

在概念上等效于:

C#

Author anonymousAuthorObject = new Author("H. Ackerman");  anonymousAuthorObject.version = 1.1;

但是,直到查询 SampleClass 以获取属性时才会执行此代码。对 SampleClass 调用 GetCustomAttributes 会导致按上述方式构造并初始化一个 Author 对象。如果类还有其他属性,则其他属性对象的以类似方式构造。然后 GetCustomAttributes 返回 Author 对象和数组中的任何其他属性对象。之后就可以对此数组进行迭代,确定根据每个数组元素的类型所应用的属性,并从属性对象中提取信息。

C#反射——示例

下面是一个完整的示例。定义一个自定义属性,将其应用于若干实体并通过反射进行检索。

C#

[System.AttributeUsage(System.AttributeTargets.Class |                         System.AttributeTargets.Struct,                         AllowMultiple = true)  // multiuse attribute  ]  public class Author : System.Attribute  {      string name;      public double version;       public Author(string name)      {          this.name = name;          version = 1.0;  // Default value      }       public string GetName()      {          return name;      }  }   [Author("H. Ackerman")]  private class FirstClass  {      // ...  }   // No Author attribute  private class SecondClass  {      // ...  }   [Author("H. Ackerman"), Author("M. Knott", version = 2.0)]  private class ThirdClass  {      // ...  }   class TestAuthorAttribute  {      static void Main()      {          PrintAuthorInfo(typeof(FirstClass));          PrintAuthorInfo(typeof(SecondClass));          PrintAuthorInfo(typeof(ThirdClass));      }       private static void PrintAuthorInfo(System.Type t)      {          System.Console.WriteLine("Author infORMation for {0}", t);          System.Attribute[] attrs = System.Attribute.GetCustomAttributes(t);  // reflection           foreach (System.Attribute attr in attrs)          {              if (attr is Author)              {                  Author a = (Author)attr;                  System.Console.WriteLine("   {0}, version {1:f}", a.GetName(), a.version);              }          }      }  }

输出

Author information for FirstClass

H. Ackerman, version 1.00

Author information for SecondClass

Author information for ThirdClass

H. Ackerman, version 1.00

M. Knott, version 2.00

以上就是C#反射访问属性规范有哪些,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注编程网精选频道。

--结束END--

本文标题: C#反射访问属性规范有哪些

本文链接: https://www.lsjlt.com/news/294328.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • C#反射访问属性规范有哪些
    本篇文章给大家分享的是有关C#反射访问属性规范有哪些,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。C#反射——属性规范C#[Author("H. Acker...
    99+
    2023-06-17
  • Java中Bean属性命名规范有哪些
    Java中Bean属性命名规范有哪些,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。问题由来:最近在一个java bean类中定义了一个boolean类型的变量:...
    99+
    2023-06-17
  • C#语言规范有哪些
    这篇文章主要讲解了“C#语言规范有哪些”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“C#语言规范有哪些”吧!C#语言规范——注释规范a)文件头部注释【规则1-1】文件都包含文件头,要说明文件...
    99+
    2023-06-17
  • C#代码规范有哪些
    C#代码规范有哪些,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。1. 引言按照此规范来开发C#程序可带来以下益处:· 代码的编写...
    99+
    2023-06-17
  • C#命名规范有哪些
    这篇文章给大家介绍C#命名规范有哪些,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。1 ADO.NET 命名规范数据类型数据类型简写标准命名举例ConnectionconconNorthwindCommandcmdcmd...
    99+
    2023-06-17
  • C#的命名规范有哪些
    本篇内容主要讲解“C#的命名规范有哪些”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“C#的命名规范有哪些”吧!C#项目开发实例中,对于规范的制定,是很重要的要求。合理的方法名,合适的命名都是C#...
    99+
    2023-06-17
  • C#中有哪些命名规范
    本篇文章给大家分享的是有关C#中有哪些命名规范,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。匈牙利命名法 我最早接触到的命名规范是匈牙利命名法,该方法出自微软,基本上是一些在你...
    99+
    2023-06-17
  • C#中有哪些.NetFramework编码规范
    本篇文章给大家分享的是有关C#中有哪些.NetFramework编码规范,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。.Net Framework中的委托与事件尽管很多范例都能...
    99+
    2023-06-17
  • C#语言命名规范有哪些
    C#语言命名规范有哪些,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。a)类【规则1-1】使用Pascal规则命名类名,即首字母要大写。【规则1-2】使用能够反映类功能的名词或名...
    99+
    2023-06-17
  • 有关Java反射的问题有哪些
    这篇文章主要讲解了“有关Java反射的问题有哪些”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“有关Java反射的问题有哪些”吧!反射可以修改final类型成员变量吗final我们应该都知道,...
    99+
    2023-06-15
  • C#反射相关知识有哪些
    这篇文章主要讲解了“C#反射相关知识有哪些”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“C#反射相关知识有哪些”吧!C#反射是什么?Reflection,中文翻译为反射。这是.Net中获取运...
    99+
    2023-06-17
  • c语言文件命名规范有哪些
    C语言文件命名规范有以下几种常见方式:1. 小写字母命名法:文件名全部使用小写字母,单词之间用下划线 "_" 分隔。例如:my_fi...
    99+
    2023-08-16
    c语言
  • 小程序设计的规范问题有哪些
    本篇内容介绍了“小程序设计的规范问题有哪些”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!小程序设计区域小程序的「所有页面」右上角位置,都固定...
    99+
    2023-06-27
  • 违反 PHP 函数文档编写规范有哪些后果?
    违反 php 函数文档编写规范的后果:不可预测的行为:代码无法预期违规函数的行为,导致意外结果或错误。代码质量下降:难以阅读和理解,降低代码质量。维护困难:必须检查实现方式才能了解用法,...
    99+
    2024-04-26
    php 函数文档
  • C语言标识符命名规范有哪些
    本篇文章为大家展示了C语言标识符命名规范有哪些,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。 标识符标识符是编程时使用的名字,用于给变量、常量、函数、语句块等命名,以建立起名称与使用之间的...
    99+
    2023-06-15
  • C语言中作用域编码规范有哪些
    这期内容当中小编将会给大家带来有关C语言中作用域编码规范有哪些,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。规范本身应该是一个规定,但C/C++在编码上并没有这样的规定,凡符合C/C++语法的就是合格的代...
    99+
    2023-06-17
  • java中内部类有哪些访问规则
    本篇文章为大家展示了java中内部类有哪些访问规则,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。Java是什么Java是一门面向对象编程语言,可以编写桌面应用程序、Web应用程序、分布式系统和嵌入式...
    99+
    2023-06-14
  • CSS和XTHML写规范以及常见问题有哪些
    这篇文章主要介绍CSS和XTHML写规范以及常见问题有哪些,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!项目文档目录 div+CSS命名规范 - 4 - Div+css命名规范 - 4 - 1.1. div+css命...
    99+
    2023-06-08
  • C#中有哪些访问修饰符
    本篇文章为大家展示了C#中有哪些访问修饰符,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。C#访问修饰符C#访问修饰符与 Java 大致相同,我们将在这一部分介绍其中的一些细微差别。每个类成员或类本身...
    99+
    2023-06-17
  • C#泛型方法中反射常用方法有哪些
    这篇文章主要讲解了“C#泛型方法中反射常用方法有哪些”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“C#泛型方法中反射常用方法有哪些”吧!C# 泛型方法中反射常用方法使用的:因为公共语言运行库...
    99+
    2023-06-17
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作