今天又是脑洞大开,对面向对象又有了一些新的感悟,面向对象的五大特性(再啰嗦几次就记住了哈):
1、抽象;
2、封装和数据隐藏;
3、多态;
4、继承;
5、代码重用;
今天着重从封装和数据隐藏来领悟一下面向对象的独特魅力,面向对象一直在强调数据私有性的重要性以及能够使用对外提供的接口对内部的私有数据进行访问。
什么意思呢?我来举个再普通不过的例子,相信大家一下就可以听懂:
将人看做一个类,人类大脑中的想法和记忆理解为数据,而眼睛、鼻子、耳朵、嘴理解为类对外提供的公共接口,可以通过这些接口访问到对象中的私有部分,也就是被人的想法和记忆。两个人在交流的过程中,我们都是通过嘴和耳朵与他人进行着数据的交流,而大脑中的这些数据我们可以提供给其他对象访问,也可以对其他对象隐藏,同时也可以欺骗其他对象,这便是将人作为一个类来理解封装和数据隐藏。
哈哈,这样理解起来是不是容易了一些。。。。