为什么C#中要用属性来封装字段有什么好处?我可以把字段声明为私有的,然后用两个public方法来代替get,s

为什么C#中要用属性来封装字段有什么好处?我可以把字段声明为私有的,然后用两个public方法来代替get,set块啊!!!!(多谢了!)... 为什么C#中要用属性来封装字段有什么好处?我可以把字段声明为私有的,然后用两个public方法来代替get,set块啊!!!!(多谢了!) 展开
 我来答
沉默海贼0230
2013-11-09 · TA获得超过909个赞
知道答主
回答量:119
采纳率:100%
帮助的人:47.3万
展开全部
帮助别人就是帮助自己! 如果这里解决了您的问题,请您点一下推荐 × 为什么C#中要用属性来封装字段有什么好处?我可以把字段声明为私有的,然后用两个public方法来代替get,set块啊!!!! C#语言5 次浏览 2008-09-04 17:5512 个回答 可以控制变量是否可以读取而不写入,或者是仅仅写入而不读取,或者可读可写!
首先private string name;
public string name{get{return name;}
set{name=value;}}这样看起来美观~ 程序的可读性好,结构也清晰,它有保护数据的作用
引入属性这个概念纯粹是为了提高代码的可读性。
当然如果你一定要说直接写成方法可读性会更好,那也没办法,这是个见仁见智的问题。
但别忘了.NET是谁设计的。
不过属性的一个简单的使用就是在设置或获取的过程成,可以自动调用其他的方法。
C# codepublic PropertyTest { publicstring mP1; publicstring p1 get { // do someths here before get_P1() method.return mP1; }; set { // do someths here before set_P1() method.mP1 = value; }; }其实在内部是自动吧每个属性前加上 get_**** set_**** 的,实际上也是方法的实现而已。 2008-09-05 20:22 推荐: 0 次 有帮助? 请推荐 其实两种实现都差不多,但封装起来,用起来比较灵活点。。。。。 2008-09-05 21:19 推荐: 0 次 有帮助? 请推荐 学习过 2011-06-26 15:46 推荐: 0 次 有帮助? 请推荐
三二一零八
2019-03-30 · TA获得超过219个赞
知道小有建树答主
回答量:283
采纳率:100%
帮助的人:63.7万
展开全部
get和set其本身就是两个方法。
你所说的使用两个public方法来代替,在Java中你会发现,其没有C#这样格式的属性。在java里写一个属性的的确确就是写成两个方法(getXX和setXX)的形式,只是我们给它提供一个“属性”的概念。
而C#中,其实只是提供一个格式,对它做了一个简化,不过既然C#本身提供这样的简化的语法,使用两个方法来作为“属性”就显得不太合理了。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式