C#里面为什么有时候要用get set设置属性?
平时自己写程序从来没用过这东西也可以实现功能,但是看许多程序都有这些,就是搞不明白为什么要这样做,比如炒作数据库的。帮忙解释一下,给个例子。...
平时自己写程序从来没用过这东西也可以实现功能,但是看许多程序都有这些,就是搞不明白为什么要这样做,比如炒作数据库的。帮忙解释一下,给个例子。
展开
4个回答
2013-08-05
展开全部
你所说的情况应该是定义一个属性,使之为private私有,然后一个public方法可以获取或设置该属性值吧这就是体现代码的封装性,因为如果你直接把属性定义为公开的话,那么任意地方创建该实例,就都可以使用该属性,就难以确保安全性等。。而如果写成一个方法来调用的话。那么你就可以设置相应的访问权限,是子类访问,还是包内访问,抑或是单例等之类的。。。操作更灵活
2013-08-05
展开全部
这是一种设计原则,称之为面向对象的封装性。从现在的开发角度说,是不建议直接将成员(指的是变量)直接用公开的方法供其它类访问的,因为这可能会导致有其它不可预见的时候意外修改了变量,或导致其它类似的问题。当使用get、set将变量封装为属性以后,可以控制它们的可见性(能否被读取、能否被修改、能被谁操作等),修改的时候可以对将要修改的值进行验证是否合法,防止被其它类意外修改。这些都是面向对象设计的方法。想知道详细的资料,可以搜索面向对象的相关特性:继承、封装和多态。建议
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
这是一种设计原则,称之为面向对象的封装性。从现在的开发角度说,是不建议直接将成员(指的是变量)直接用公开的方法供其它类访问的,因为这可能会导致有其它不可预见的时候意外修改了变量,或导致其它类似的问题。当使用get、set将变量封装为属性以后,可以控制它们的可见性(能否被读取、能否被修改、能被谁操作等),修改的时候可以对将要修改的值进行验证是否合法,防止被其它类意外修改。这些都是面向对象设计的方法。想知道详细的资料,可以搜索面向对象的相关特性:继承、封装和多态。建议
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-08-05
展开全部
要确保安全
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询