读书人

set 跟 get 方式 有啥好处

发布时间: 2014-01-17 15:01:00 作者: rapoo

set 和 get 方式 有啥好处?
例如一个成员变量:


属性跟字段的好处。
[解决办法]
C#中get和SET,看来看去还是看不懂,通俗一点解释一下,用了有什么好处,不用会怎么样
如果你这样写是没有什么不一样的.

[解决办法]
可以对小窗户做一些控制,例如加个透光玻璃什么的
[解决办法]
官方解释:封装就是隐藏实现细节将属性私有化,提供公有方法访问私有属性,通过这些公有方法访问私有属性,这样让数据更加安全。

[解决办法]
如果是纯粹的get;set;仅仅与环境相关,比如可以作为接口实现,或者某个框架数据处理仅支持属性。
其它情况,应该把它看成两个函数的简写。
[解决办法]
因为有时候你的get或者set里需要添加程序逻辑,而且使用get和set的属性调用的时候相当于内联函数,没有入栈出栈的问题,性能是最高的
[解决办法]

写了个简单的例子,平常写实体,经常用到!

//汉字自动转拼音
class MyClass1
{
private string _Chinese;//汉字

public string Chinese
{
get { return _Chinese; }
set
{
_Chinese = value;
_Spell = CVS(_Chinese);//转换的方法
}
}

private string _Spell;//拼音

public string Spell
{
get { return _Spell; }
set { _Spell = value; }
}
}
//自动求和
class MyClass2
{
private int _A;

public int A
{


get { return _A; }
set { _A = value; }
}

private int _B;

public int B
{
get { return _B; }
set { _B = value; }
}

private int _result;

public int Result
{
get { return _A * _B; }
set { _result = value; }
}
}

public class Main
{
private void chibaolemeishigan()
{
MyClass1 m1 = new MyClass1();
m1.Chinese = "张三";
string a= m1.Spell;//自动得到拼音了

MyClass2 m2 = new MyClass2();
m2.A = 2;
m2.B = 4;
int b = m2.Result;//得到值8,这只是简单的算法!
//经常在DataGridView中使用,可以自动转换!不用多写代码!

}
}


[解决办法]
以上是在写实体的时候用!

当用作全局变量时,可以用于触发!
当此变量值变化时,就是走Set,可以在Set那进行判断,处理自己的逻辑!
[解决办法]
可以限制变量的访问权限啊,例如只有set时候只可以写权限,只有get时只有读权限,都有时即可赋值也可取值。而且在set中还可以对变量进行复杂的初始化
[解决办法]
访问限制是一个,还有就是你在get和set的时候可以做一些自定义的处理啊!
[解决办法]

[解决办法]
set 跟 get 方式  有啥好处
1可以在赋值的时候做判断 判断值是否符合

[解决办法]
引用:
(3)可以实现懒惰数据加载提高性能
求个例子啊不理解啊。


各种orm的导航属性都是,呵呵
[解决办法]
引用:
Quote: 引用:

(3)可以实现懒惰数据加载提高性能
求个例子啊不理解啊。


各种orm的导航属性都是,呵呵

哦N年没做orm了,原理是啥?就是get的时候再加载数据?

读书人网 >C#

热点推荐