请问C#中get和SET到底是什么意思啊?
我看来看去看不懂啊,有谁能解释得通俗点吗?最好带有具体代码?IPROMISE,会有高分奖励的...
我看来看去看不懂啊,有谁能解释得通俗点吗?
最好带有具体代码?
I PROMISE,会有高分奖励的 展开
最好带有具体代码?
I PROMISE,会有高分奖励的 展开
3个回答
展开全部
get set是用来扩展域的,也就是C里的变量,只是用起来更加灵活而己。看以下代码:
using System;
public class cls
{
private int book;//定义一个域(也可以叫变量,只是面向对像里都这么叫,使用起来也更加方便)
public int Book
{
get
{
Console.WriteLine("dsf");
return book;
}
set
{
Console.WriteLine("aaa");
book=value;
}
}
public static void Main()
{
cls obj = new cls();
obj.Book = 120; //注意这一句
Console.WriteLine(obj.Book);
}
}
运行结果为:
aaa
dsf
120
也就是先把120赋值给value(相当一个存储空间),然后再用get{}返回给Book,实际上也就是一次改变变量值的过程。
那你也许会问为什么要这么复杂呢?因为这是用了嵌套,所以可以更加方便的写入其它语句,在以后你就应该学到了。
如果没有:
obj.Book = 120;
请想一想会是什么结果呢?
只是一个取值过程:get{}而没有执行set{}
结果为:
dsf
0
using System;
public class cls
{
private int book;//定义一个域(也可以叫变量,只是面向对像里都这么叫,使用起来也更加方便)
public int Book
{
get
{
Console.WriteLine("dsf");
return book;
}
set
{
Console.WriteLine("aaa");
book=value;
}
}
public static void Main()
{
cls obj = new cls();
obj.Book = 120; //注意这一句
Console.WriteLine(obj.Book);
}
}
运行结果为:
aaa
dsf
120
也就是先把120赋值给value(相当一个存储空间),然后再用get{}返回给Book,实际上也就是一次改变变量值的过程。
那你也许会问为什么要这么复杂呢?因为这是用了嵌套,所以可以更加方便的写入其它语句,在以后你就应该学到了。
如果没有:
obj.Book = 120;
请想一想会是什么结果呢?
只是一个取值过程:get{}而没有执行set{}
结果为:
dsf
0
展开全部
...
get 是读,
set 是写,
所有属性和方法,都应该是这样
get 是读,
set 是写,
所有属性和方法,都应该是这样
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
get是给属性赋值,set是取属性的值。
get、set用法:
一是隐藏组件或类内部的真是成员;
二是用来建立约束的,比如,实现“有我没你”这种约束;
三是用来响应属性变化事件,当属性变化是做某事,只要写在set方法里就行。
当你想读出或写入属性的值时,存取标志限定了被实现的语句。用于读出属性的值的存取标志记为关键字get,而要修改属性的值的读写符标志记为set。
下面是示例代码:
public class student
{
private string name
public string name
{
set{name=value;}//这里是给私有属性name赋值
get{return name;}//这里取出私有属性name的值
}
}
get、set用法:
一是隐藏组件或类内部的真是成员;
二是用来建立约束的,比如,实现“有我没你”这种约束;
三是用来响应属性变化事件,当属性变化是做某事,只要写在set方法里就行。
当你想读出或写入属性的值时,存取标志限定了被实现的语句。用于读出属性的值的存取标志记为关键字get,而要修改属性的值的读写符标志记为set。
下面是示例代码:
public class student
{
private string name
public string name
{
set{name=value;}//这里是给私有属性name赋值
get{return name;}//这里取出私有属性name的值
}
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询