【问题标题】:vb.net get/set Properties without logicvb.net 获取/设置属性没有逻辑
【发布时间】:2012-01-19 14:48:23
【问题描述】:

在我在网上阅读的许多文章中说,在 vb.net 中创建属性时,它们应该使用 get/set 方法和类中的私有/受保护成员变量。

像这样:

Public Class Person
  Private _name as string
  public property Name  as string
    get
      return _name
    end get
    set(byval value as string)
      _name = value
    end set
  end property
end class

如果属性的 get/set 中没有没有逻辑,为什么不能像这样编写相同的属性:

Public class Person
  Public Property Name as string
end class

这是因为属性只是为了从外部访问类,而您将变量存储在类中吗?

【问题讨论】:

  • 哦,我明白了。我认为您的回答是“您的代码的一致性”。我也没有意识到什么是自动实现的属性,直到我阅读了关于它的MSDN article。感谢您的意见。

标签: vb.net .net-4.0 properties


【解决方案1】:

原因是这些指南和教程是在 VB.NET 4.0 出现之前发布的。没有其他理由不使用自动实现的属性。

【讨论】:

    【解决方案2】:

    虽然Konrad 已经到位,但我将补充说,作为一个教程,教育学生属性如何工作比快捷方式实现更重要。更现代的教程应该显示扩展代码,然后是快捷方式。

    最终,这取决于教程,无论是关于编程基础和方法,还是关于特定功能。

    【讨论】:

      【解决方案3】:

      在此之前的旧版教程是​​一项功能。自动实现的属性表示法为您提供了一种简洁的方式来实现对类的访问一致性

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2019-04-22
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多