当我们定义属性的 get 访问器和 set 访问器时,其中的 return
和 value
分别代表以下含义:
-
return
:在 get 访问器中使用,表示返回属性的值给调用方。它用于将属性关联的字段的值返回给外部代码。 -
value
:在 set 访问器中使用,表示要为属性设置的值。它用于将外部代码传递给属性关联的字段,并将其赋值给字段。
下面是对不同类型属性的详细解释和示例说明:
- 只读属性(Read-Only Property):只包含 get 访问器的属性,无法从外部进行赋值,只能读取属性的值。
private string name; // 字段
public string Name // 只读属性
{
get
{
return name; // 返回字段的值
}
}
在上述示例中,属性 Name
是只读属性,它只包含 get 访问器。外部代码可以读取该属性的值,通过 get 访问器返回字段 name
的值。
MyClass obj = new MyClass();
string name = obj.Name; // 使用 get 访问器获取 Name 属性的值
- 只写属性(Write-Only Property):只包含 set 访问器的属性,无法从外部读取属性的值,只能进行赋值操作。
private string address; // 字段
public string Address // 只写属性
{
set
{
address = value; // 将传入的值赋给字段
}
}
在上述示例中,属性 Address
是只写属性,它只包含 set 访问器。外部代码可以使用赋值操作符将值赋给该属性,通过 set 访问器将传入的值赋给字段 address
。
MyClass obj = new MyClass();
obj.Address = "123 Main St"; // 使用 set 访问器设置 Address 属性的值
- 读写属性(Read-Write Property):包含同时拥有 get 访问器和 set 访问器的属性,可以从外部读取属性的值和设置属性的值。
private int age; // 字段
public int Age // 读写属性
{
get
{
return age; // 返回字段的值
}
set
{
age = value; // 将传入的值赋给字段
}
}
在上述示例中,属性 Age
是读写属性,它同时包含 get 访问器和 set 访问器。外部代码可以读取该属性的值和为其赋值。文章来源:https://www.toymoban.com/news/detail-671261.html
MyClass obj = new MyClass();
obj.Age = 25; // 使用 set 访问器设置 Age 属性的值
int currentAge = obj.Age; // 使用 get 访问器获取 Age 属性的值
在以上示例中,return
在 get 访问器中用于返回属性关联字段的值,而 value
在 set 访问器中用于接收外部代码传递的值,并将其赋给属性关联的字段。通过这种方式,属性的 get 访问器和 set 访问器提供了对属性值的读取和设置的统一接口。文章来源地址https://www.toymoban.com/news/detail-671261.html
到了这里,关于C#中的get和set的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!