高淇三百集之java面向对象的封装

面向对象三大特征:继承、封装、多态

封装(encapsulation)

为什么需要封装?封装的作用和含义?

我要看电视,只需要按一下开关和换台就可以了。有必要了解电视机内部的结构吗?有必要碰碰显像管吗?

制造厂家为了方便我们使用电视,方便我们开车,把复杂的内部细节全部封装起来,只给我们暴露简单的接口,比如:电源开关、比如:油门。具体怎么内部实现的,我们不需要操心。

需要让用户知道的暴露出来,不需要让用户了解的全部隐藏起来,这就是封装。

白话:该露的露,该藏的藏。

专业:我们程序设计要追求“高内聚,低耦合”。高内聚就是类的内部数据操作细节自己完成,不允许外部干涉;低耦合:仅暴露少量的方法给外部使用。

编程中封装的具体意义

便于调用者调用。

良好的封装,便于修改内部代码,提高可维护性。

良好的封装,可进行数据完整性检测,保证数据的有效性。

使用访问控制符,实现封装

范围越来越大

封装的使用细节

1.属性一般使用private.(除非本属性确定会让子类继承并且使用)

提供相应的get/set方法来访问相关属性. 这些方法通常是public,从而提供对属性的读取操作。 (注意:boolean变量的get方法是用:is开头!)

2.一些只用于本类的辅助性方法可以用private,希望其他类调用的方法用public。

课堂代码

尚学堂的高淇三百集是比较适合零基础学习的一套教学视频,内容很详细。尚学堂资料分享,包括java、大数据、人工智能等,可留言或私信领取。

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180207A084AR00?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 yunjia_community@tencent.com 删除。

扫码关注云+社区

领取腾讯云代金券