• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
激情 希望 斗志昂扬
Records of growth process 专注微软技术
博客园    首页    新随笔    联系   管理    订阅  订阅

字段和属性关系

 

 

字段就像名词 属性好比形容词 用来形容名词长什么样子

字段和属性描述的对象不同.
表: 建立表后,设置字段.
表单: 建立表单后,设置属性。
属性其實是方法,一般來說,字段是不設成public的,對於用戶是隱藏的,所有字段都是通過屬性對外開放的

  private System.Int32 _id;
           public System.Int32 id
           {
                 get { return _id; }
                 set { _id = value; }
           }
           private System.String _uid;
           public System.String uid
           {
                 get { return _uid; }
                 set { _uid = value; }
           }
           private System.String _reason;
           public System.String reason
           {
                 get { return _reason; }
                 set { _reason = value; }
           }

_id就是字段,id就是属性    私有字段体现类的封装性。。为了保护类里面的成员不被任意改动。

set()和get()属性实现了数据的封装和保证了数据的安全性!
封装使程序可靠且易于维护!

 

 

using System;

class Account
{
 private double balance = 0;  //字段
 public double Balance   //属性
 {
  get { return balance; }
  set { balance = value;}
 }
 /*=============================================================
  * 我们可以通过修改get、set方法达到控制存取的目的。
  * 例如:
  *
  * 1)只读属性
  * public double Balance   //属性
  * {
  *    get { return balance; }
  *    set { }
  * }
  *
  * 2)读写控制
  * public double Balance
  * {
  *    get
  *    {
  *       if(Console.ReadLine()=="1234")
  *          return balance;
  *       else
  *          return -9999999;
  *    }
  *    set { }
  * }
  * =============================================================
  */

 public void Deposit(double n)
 { this.balance += n; }

 public void WithDraw(double n)
 { this.balance -= n; }
}

class Client
{
 public static void Main()
 {
  Account a = new Account();
  a.Balance = 1000; // 可以读写属性,因为属性Balance是public型的
  //a.balance = 1000; //不可以读写字段,因为字段balance是private型的

  a.WithDraw(500);
  a.Deposit(2000);
  Console.WriteLine(a.Balance);
 }
}

posted @ 2008-12-25 22:13  贤  阅读(297)  评论(0)    收藏  举报
刷新页面返回顶部
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3