简单地理解什么是:“封装”。

47 阅读2分钟

封装

  最易于理解的说法就是套外壳来屏蔽细节。 比如:对于电脑这样一个复杂的设备,提供给用户的就只是:开关机、键盘输入,显示器,USB插孔等,让用户来和计算机进行交互,完成日常事务。但实际上:电脑真正工作的却是CPU、显卡、内存等一些硬件元件。 对于计算机使用者而言,不用关心内部核心部件,比如主板上线路是如何布局的,CPU内部是如何设计的等,用户只需要知道,怎么开机、怎么通过键盘和鼠标与计算机进行交互即可。因此计算机厂商在出厂时,在外部套上壳子,将内部实现细节隐藏起来,仅仅对外提供开关机、鼠标以及键盘插孔等,让用户可以与计算机进行交互即可。 image.png 结论:封装就是通过添加外壳来屏蔽一些细节。电脑,手机,手表等这些都是明显的例子

封装扩展包

  在面向对象体系中,提出了一个软件包的概念,即:为了更好的管理类,把多个类收集在一起成为一组,称为软件包,有点类似于各类教科书的目录:将东西根据某种属性进行分类储存。

例如:我们为了更方便找到我们想要找到电脑中存储的歌曲,一种好的方式就是将相同属性的歌曲放在相同文件 下,也可以对某个文件夹下的音乐进行更详细的分类。可以根据歌曲的风格,歌手的名字进行分类。

image.png 结论:封装扩展包就如同电脑的文件夹一样,用来存储数据或者其他东西。

包中的类

  类是用来对一个实体(对象)来进行描述的,主要描述该实体(对象)具有哪些属性(外观尺寸等),哪些功能(用来干啥),描述完成后计算机就可以识别了。

包中的类:代表存储在当前包中的类。比如:布偶猫,它是一个动物,在Java中可以将其看成是一个类别。科目:猫科动物,种类:布偶,类型:小型猫,产品重量:5kg-10kg,外观尺寸,颜色... 行为:踩奶 喵喵叫。

image.png 结论:类就相当于电脑文件夹内存放的各类文件。这类文件一般都是外部文件夹的具体描述。类似属性,性别,年龄,住址等。