面向对象:注重的是事情的参与者,将功能封装进对象,强调具备功能的对象,以类/对象为基本单位(考虑谁来做)
面向过程:注重的是事情的具体步骤,注重的是步骤过程的具体操作,以函数为基本单位(考虑怎么做)
众所周知java是一个面向对象的语言,哪面向对象与面向过程怎么区分呢?
我们引入一个经典的问题:人将大象装进冰箱
面向过程:(这是一个执行者的过程)(一步又一步一环扣一环) (我们要先考虑什么然后再考虑谁做什么)以C语言为例
函数1:把冰箱打开(){ 具体如何将冰箱打开的步骤......}
函数2:把大象装进冰箱(){具体如何将大象装进去,可能还有考虑大象是否装的进去的问题.....}
函数3:关上冰箱(){怎么关,关的具体操作......}
面向对象:(通俗来讲就好比一个上帝视角,知道什么要去干什么)(是一个指挥者)
人{
打开(冰箱){
}
存储 (大象){
}
关闭 (冰箱){
}
}
象{
进入冰箱
}
冰箱{
打开
关闭
}
正如赵姗姗老师说的,我们对于面向对象这个含义是一个渐悟的过程
仅以此篇记载学习过程,同时与各位友友分享(欢迎指正)
希望几年后再看这篇文章时会有不一样的感觉。