当前位置: 首页 > 编程语言 > C#

C#中的属性或变量Share

时间:2023-04-10 21:06:47 C#

C#中的属性或变量可能重复:属性与字段:需要帮助掌握字段属性的使用。我在课堂上看到了属性和变量。你能告诉我们我们使用哪个case属性以及我们使用变量的场景吗?无论如何,通常属性都由变量支持。即使你有一个像这样的自动实现的属性:publicstringName{get;放;幕后仍有变数。并非所有属性都由变量(例如DateTime.Now)支持,但绝大多数是。事实上,您应该始终使用属性来访问其他类型的数据,而不是公开变量。(换句话说,变量本身应该是私有的。)通过这种方式,您可以将类的API与其实现分开......类存储数据的确切方式应该只与类本身有关。如果您只是在类本身中引用一段数据,则根本不需要该属性,除非您想在更改时执行验证,或类似的事情。在通过属性公开变量之前值得仔细考虑——如果你一直这样做,你会失去一定程度的封装;类型通常不应该只是由其他代码操作的数据集合。他们应该使用其中的数据来公开更高级别的操作。这有点难以描述,我并不是说这些属性天生就不好——只是如果您不小心,它们可能会被过度使用。一般来说,最好创建公共属性和私有变量。公共变量的原因很少。[需要属性的示例是设置对象属性并引发事件以通知订阅者更改]。可能有很多场景在使用变量和属性之间存在差异。通常变量用于类的内部工作,类不应该公开变量,换句话说,可以从其他类访问属性。此外,某些代码生成和工具需要您定义变量或属性。例如,在XAML(WPF和Silverlight)中,您必须公开依赖属性的变量。此外,由于属性是用于获取或设置值的代码,因此它们甚至可以用于提供对存储在别处的内容的访问,而不是内部类变量。例如,您可以定义一个允许将UI片段绑定到文本文件内容的属性。您不必“使用”字段而不是“属性”,字段实际上在运行时更快。但是,通常您需要将实例变量定义为类的属性。这允许您使用Fields做一些额外的事情。可以是只读的或只写的可以像方法一样包含在接口中可能有副作用。类的接口可以使很多事情变得更容易,包括测试和维护。publicinterfaceIStudentGroup{ListNameList{get;}}副作用是最有用的函数之一。假设您有一个名为Items的属性,其中包含一个集合。如果它为空,您可能希望自动初始化它。例如:privateListnamesList;publicListNameList{{get{if(namesList==null)namesList=newList();返回名称列表;为了完整起见,我想添加(来自msdn)属性不应在计算上复杂或产生副作用因此对于计算复杂或有副作用的操作,编写GetX()、SetX()方法而不是使用属性属性getter应该是一个简单的操作,没有任何先决条件。如果getter可能会抛出异常,请考虑将属性重新设计为方法。此建议不适用于索引器。索引器可能会因参数无效而抛出异常。以上就是C#学习教程:C#中属性或变量分享的全部内容。如果对你有用,需要进一步了解C#学习教程,希望大家多多关注。本文收集自网络,不代表立场。如涉及侵权,请点击右侧联系管理员删除。如需转载请注明出处: