c# - 属性与 get 之间的区别;放;没有得到;放;

标签 c# properties static get set

<分区>

我不明白静态属性之间的区别:

public static int intId;

然后得到;设置;属性:

public int intId
{
  get
  {
    return intId;
  }
  set
  {
    intId = value;
  }
}

这两者有什么区别?它们的工作原理相同还是不同?

最佳答案

您的第一个样本是一个字段,而不是一个属性。

最好始终将字段设为私有(private),并将它们包装在属性中。

这样您就可以在后代中设置或覆盖属性(如果它被标记为虚拟)添加验证。您还可以在 get 和 set 中添加一些棘手的代码,这些代码将对那些使用您的类的人隐藏。

关于c# - 属性与 get 之间的区别;放;没有得到;放;,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15976031/

相关文章:

c# - 使用其 AssemblyShortName 以外的任何内容引用 xaml 中的当前程序集

c# - SQL Server - Guid VS。长

rust - 在 Rust 中有没有办法将静态变量包含到其他文件中?

C++ - 初始化静态成员它自己的方法

c# - 检测是否在 WPF 和 Winforms 的 UI 线程上

c# - 如何在紧凑框架中从字节数组加载程序集

java - Spring PropertyPlaceholderConfigurer 默认值覆盖实际属性值

java - 如何将 Camel 属性加载到 Bean 中?

Java - 将对象列表映射到具有其属性属性值的列表

Objective-C 静态类级别变量