(C#)WPF:Property和Attribute的区别

2021-05-17 02:27

阅读:571

标签:长度   str   问题   lan   针对   key   attr   col   封装   

在C#里Property是属性,Attribute是特性。它们的概念是不一样的,充其量就是中文的神翻译问题。

1)属性是指类体里用get或set封装好的属性。属性是面向对象的理论范畴。比如说一个盒子,盒子的高度,长度,都是这个盒子的属性。在C#中实现的时候可以通过GET SET 封装。

2)特性是指应用于类,字段,方法,接口的进一步说明,用专业的术语就是给类,字段,方法,接口补充元数据,说的再白一点就是给它们打上标记,打了标记后编译器就知道如何来编译它。特性是属于编程语言层面的东西。比如2个相同的类,为了表示这2个类不完全相同或者有差异。这时候就要针对这两个类加一些特性。

来看个例子吧,加深下印象:

 1 [Serializable]                                   // 这是Attribute,打上该标记的类说明可以被序列化
 2 class Order
 3 {
 4    protected internal Single Price { get; set; } // 这是Property
 5  
 6    [Obsolete("此方法已过时,请改用xxx.")]           // 打上该标记说明此方法是过时的
 7    public Single GetPrice()
 8    {
 9       return default(Single);
10    }
11 }

 

(C#)WPF:Property和Attribute的区别

标签:长度   str   问题   lan   针对   key   attr   col   封装   

原文地址:https://www.cnblogs.com/yuhoutian/p/11790742.html


评论


亲,登录后才可以留言!