谁来简单说说C#中get {}set {}是什么回事,怎么用?
4个回答
展开全部
属性的访问器包含与获取(读取或计算)或设置(写)属性有关的可执行语句。访问器声明可以包含 get 访问器或 set 访问器,或者两者均包含;
自己的理解:就相当于 类里的字段 要设置成私有的(比如name),但是别的要访问你 然后就弄了公有的字段(Name),这样别人就可以访问你。这个公有的字段其实是对应类里的私有字段;一个过渡一样的作用;给Name赋值,其实就是给name赋值,取Name其实就是取name;体现一种封装的思想;大概意思就是这样,可能描述的不是很专业。你再对应的看一段程序,就会明白了
using System;
public class BaseClass
{
private string name;
public string Name
{
get
{
return name;
}
set
{
name = value;
}
}
}
public class DerivedClass : BaseClass
{
private string name;
public new string Name // Notice the use of the new modifier
{
get
{
return name;
}
set
{
name = value;
}
}
}
public class MainClass
{
public static void Main()
{
DerivedClass d1 = new DerivedClass();
d1.Name = "John"; // Derived class property
Console.WriteLine("Name in the derived class is: {0}",d1.Name);
((BaseClass)d1).Name = "Mary"; // Base class property
Console.WriteLine("Name in the base class is: {0}",
((BaseClass)d1).Name);
}
}
自己的理解:就相当于 类里的字段 要设置成私有的(比如name),但是别的要访问你 然后就弄了公有的字段(Name),这样别人就可以访问你。这个公有的字段其实是对应类里的私有字段;一个过渡一样的作用;给Name赋值,其实就是给name赋值,取Name其实就是取name;体现一种封装的思想;大概意思就是这样,可能描述的不是很专业。你再对应的看一段程序,就会明白了
using System;
public class BaseClass
{
private string name;
public string Name
{
get
{
return name;
}
set
{
name = value;
}
}
}
public class DerivedClass : BaseClass
{
private string name;
public new string Name // Notice the use of the new modifier
{
get
{
return name;
}
set
{
name = value;
}
}
}
public class MainClass
{
public static void Main()
{
DerivedClass d1 = new DerivedClass();
d1.Name = "John"; // Derived class property
Console.WriteLine("Name in the derived class is: {0}",d1.Name);
((BaseClass)d1).Name = "Mary"; // Base class property
Console.WriteLine("Name in the base class is: {0}",
((BaseClass)d1).Name);
}
}
展开全部
这是一个属性获取和设置有关的访问器
一般用于类中的私有成员的值获取和设置
比如:
class Object
{
private string mystr;//定义一个私有成员
public string str
{
get
{
return mystr;
}
set
{
mystr=value;
}
}
}
这样子做有利于保护好数据安全性,如果只包涵get访问器,该属性为只读属性,如果只包涵set访问器,该属性为只写属性。
你还可以根据相关数值做判断操作:
get
{
return mystr!=null?mystr:"NA";
}
一般用于类中的私有成员的值获取和设置
比如:
class Object
{
private string mystr;//定义一个私有成员
public string str
{
get
{
return mystr;
}
set
{
mystr=value;
}
}
}
这样子做有利于保护好数据安全性,如果只包涵get访问器,该属性为只读属性,如果只包涵set访问器,该属性为只写属性。
你还可以根据相关数值做判断操作:
get
{
return mystr!=null?mystr:"NA";
}
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
属性的访问器包含与获取(读取或计算)或设置(写)属性有关的可执行语句。访问器声明可以包含 get 访问器或 set 访问器,或者两者均包含。声明采用下列形式之一:
get {}
set {}
get 访问器
get 访问器体与方法体相似。它必须返回属性类型的值。执行 get 访问器相当于读取字段的值。以下是返回私有字段 name 的值的 get 访问器:
get {}
set {}
get 访问器
get 访问器体与方法体相似。它必须返回属性类型的值。执行 get 访问器相当于读取字段的值。以下是返回私有字段 name 的值的 get 访问器:
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
get读
set写
实体类用的多,其他用的少
set写
实体类用的多,其他用的少
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询