• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

C#基础字段、属性、变量三者的关系

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

原文:https://blog.csdn.net/qq_36499416/article/details/80895281
原文:https://www.cnblogs.com/lmjob/archive/2009/03/25/1421585.html

基本关系

  1. 字段和属性都是变量,只是为了区分和数据安全来设置的

  2. 字段和属性是相当于类而言的,变量是相当于方法或语句块而言的,可以在任何地方使用

  3. 字段:与类或对象关系密切,建议使用private修饰

  4. 属性:对字段进行封装,提供get/set关键字,进行访问

  5. 变量:与类和对象关系不密切,常在方法或语句块中使用

另一篇解释的比较好的文章

原文:https://www.cnblogs.com/lmjob/archive/2009/03/25/1421585.html

刚写程序时总觉得一个字段就能满足要求,何必要使用定义起来麻烦的属性
要get、set的去定义,代码量还大,真不知道他们的区别和优点
例:

public class myclass
{
   public static string A

   private sting _B="";
   public string Getval
   {
       get { retrun _B ;}
       set { _B = value; }
   }
}

myclass.A 和 myclass.Getval可能实现同样功能,为什么一定要用定义属性?

现在简单总结下属性较普通变量的优点:

  1. 数据安全
    因为A是个公有变量,在类的外部可以任意更改,为了防止因用户任意更改,可用属性get、set来限制_B的的只读、只写或控制_B的最大或最小
    引用一位老兄的简答:"其实自定义变量已经默认实现了属性,只是简单的读写而已,我们定义的属性要在读写的基础上加上更多限制,以后你学的多了就会发现,很多东西都是为了数据安全而加入的,说白了就是限制,例如接口,接口中的方法你必须(注意是必须,强制性的)要实现"
  2. OOP和编程的一个原则就是数据封装,意味着我们不应该将字段的类型以公开的方式提供给外界
  3. 其实单纯写程序一点不难,难得是如何设计程序,使代码简洁易读而效率又最高,如何保证程序的安全运行

鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap