Pau*_*per 6 .net c# inheritance custom-attributes
属性类的继承如何在C#中起作用?为了澄清,我说的是属性类本身的继承(即基类System.Attributes),而不是任何碰巧将它们作为属性的类.
出于某种原因,我似乎无法找到任何东西(我的搜索总是出现其他含义).
例如,如果a有一个AttributeA扩展的类System.Attribute:
我必须单独标记的子AttributeA带[AttributeUsage()].(既然System.AttributeUsage继承了true,我认为不会.)
将AllowMultiple=false上AttributeUsage的AttributeA阻止我有多个子类中AttributeA的属性?
编辑:
程序员只能读代码.
[AttributeUsage(AttributeTargets.Class, AllowMultiple=false)]
class AttributeA
{ }
class AttributeB : AttributeA
{ }
class AttributeC : AttributeA
{ }
[AttributeB]
[AttributeC]
class Foo
{ }
Run Code Online (Sandbox Code Playgroud)
这有用吗?
小智 0
属性用法是针对使用属性的类。
例如,如果您使用 AttributeA 标记类 A,并且类 B 是 A 的子类,则如果 AttributeA AttributeUsage 的继承为 true,则不需要使用 AttributeB 标记类 B。
| 归档时间: |
|
| 查看次数: |
1725 次 |
| 最近记录: |