博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
面向对象三大特性: 封装
阅读量:5127 次
发布时间:2019-06-13

本文共 1438 字,大约阅读时间需要 4 分钟。

封装

封装:每个对象都包含有它能进行操作的所有信息,这个特性称为封装。这样的方法包含在类中,通过类的实例来实现。

e.g. 我们可以使用遥控器。 遥控器有多个功能

封装的优点

A.良好的封装能够减少耦合(比如实现界面和逻辑分离)

B.可以让类对外接口不变,内部可以实现自由的修改

C.类具有清晰的对外接口,使用者只需调用,无需关心内部

D.因为封装的类功能相对独立,因此能更好的实现代码复用

E.可保护代码不被无意中破坏,通过私有字段等实现内部。注意:这里的代码保护不是指代码本身的加密,而是对不想外部更改的代码通过私有实现。

 

/// /// 狗狗类/// class Dog{    string _dogName;    readonly Color _dogColor=Color.Yellow;    readonly double _dogPrice = 800.00;    int _shoutNumber;    ///     /// 构造函数    ///     ///     public Dog(string dogName)    {        DogName = dogName;    }    ///     /// 狗狗名字 公有属性    ///     public string DogName    {        get { return _dogName; }        set { _dogName = value; }    }    ///     /// 狗狗颜色 只读属性 (颜色一出生就是这个颜色,这里只提供只读,当然这里不考虑染色)    ///     public  Color DogColor    {                get { return _dogColor;}                }    ///     /// 狗狗价格 只读属性 (这是买来的价格,历史是不可以修改的)    ///     public  double DogPrice    {        get { return _dogPrice; }    }    ///     /// 狗叫的次数 (不同的陌生人来,叫的次数不同)    ///     public int  ShoutNumber{        set{_shoutNumber=value;}        get { return _shoutNumber; }    }    ///     /// 狗叫的方法    ///     public void  Shout()    {        int i=0;        string ShoutNum="";        do        {            ShoutNum += "旺!";            i++;        } while (i <= ShoutNumber);        MessageBox.Show(ShoutNum);    }        }

 

封装要点

1.封装就是把一个object的所有properties和methods放在一起

2.保持统一的对外接口,内部修改不影响外部调用

转载于:https://www.cnblogs.com/TheMiao/p/9255932.html

你可能感兴趣的文章
分布式锁的思路以及实现分析
查看>>
腾讯元对象存储之文件删除
查看>>
jdk环境变量配置
查看>>
安装 Express
查看>>
包含列的索引:SQL Server索引的阶梯级别5
查看>>
myeclipse插件安装
查看>>
浙江省第十二届省赛 Beauty of Array(思维题)
查看>>
NOIP2013 提高组 Day1
查看>>
cocos2dx 3.x simpleAudioEngine 长音效被众多短音效打断问题
查看>>
存储(硬件方面的一些基本术语)
查看>>
观察者模式
查看>>
Weka中数据挖掘与机器学习系列之基本概念(三)
查看>>
Win磁盘MBR转换为GUID
查看>>
大家在做.NET B/S项目的时候多用什么设技术啊?
查看>>
Java SE和Java EE应用的性能调优
查看>>
Android设计模式系列--原型模式
查看>>
免费的论文查重网站
查看>>
C语言程序第一次作业
查看>>
leetcode-Sort List
查看>>
中文词频统计
查看>>