科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网软件频道基础软件针对 Java 开发人员的 C# 编程语言

针对 Java 开发人员的 C# 编程语言

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

Java 和 C# 之间的异同点,目的在于当迁移到 .NET 时,让 Java 开发人员掌握所涉及的一些知识。

来源:Microsoft.com 2007年10月29日

关键字: C# java Linux

  • 评论
  • 分享微博
  • 分享邮件

属性

在 C# 中,属性是类、struct,或接口的命名成员,它提供了一种简洁的途径,可以通过所谓的 get 和 set 访问器方法访问私有字段。

下面的代码片断为类 Animal 声明了一个名为 Species 的属性,它抽象了对名为 name 的私有变量的抽象访问:

public class Animal
{
  private string name;

  public string Species
  {
    get
    {
      return name;
    }
    set
    {
      name = value;
    }
  }
}

通常,属性与它访问的内部成员有相同的名称,但是属性以大写字母开头(例如上面的示例中的 Name),或者内部成员带有“_”前缀。同时还需要注意 set 访问器中所用的名为 value 的隐式参数 — 这种参数具有基础成员变量类型。

实际上,访问器在内部表示成 get_X() 和 set_X() 方法,从而与 .NET 语言保持兼容,因为 .NET 语言并不支持访问器(如本文前面的 typeOf 和 GetType() 部分中的屏幕截图所示)。一旦定义好属性,就可以非常容易地获取或设置它的值:

Animal animal = new Animal()

// Set the property
animal.Species = "Lion";

// Get the property value
string str = animal.Species;

如果属性只有 get 访问器,它就是一个只读属性。如果它只有 set 访问器,它就是一个只写属性。如果两者都有,则它是一个可读写属性。

查看本文来源
    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章