封装

封装
封装是将类的状态信息隐藏在类内部,不允许外部程序直接访问,而通过该类提供的方法来实现对隐藏信息的操作和访问。
封装的步骤:
1.属性私有化
2.加入get ,set 方法
3.加入对属性的存取控制语句
封装的好处:
1.隐藏类的实现细节;
2.让使用者只能通过程序规定的方法来访问数据;
3.可以方便的加入存取控制语句,限制不合理操作。
 

public class Person
    {
        #region Fields
        private string _name;
        private bool? _sex;
        #endregion

        #region Constructors
        public Person(string name)
            : this(name, null) { }

        public Person(string name, bool? sex)
        {
            this._name = name;
            this._sex = sex;
        }
        #endregion

        #region Properties
        public string Name
        {
            get { return this._name; }
        }

        public bool? Sex
        {
            get { return this._sex; }
        }
        #endregion

        #region Methods
        private string GetSexName(bool? value)
        {
            string sexName = null;
            switch (value)
            {
                case null:
                    sexName = "undefined";
                    break;
                case true:
                    sexName = "male";
                    break;
                case false:
                    sexName = "female";
                    break;
                default:
                    break;
            }
            return sexName;
        }

        public void Speak(string words)
        {
            Console.WriteLine(string.Format("{0}({1}) says: {2}", this._name, this.GetSexName(this._sex), words));
        }
        #endregion
    }

public: 所有对象都可以访问;

protected internal:同一个程序集内的对象,或者该类对象以及子类可访问;

internal:同一个程序集的对象可访问;

protected:该类对象以及其子类对象可访问;

private: 只有该类对象本身在对象内部可访问;

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值