首页 > 代码库 > 再次理解面向对象和面向过程

再次理解面向对象和面向过程

    什么是面向对象,什么是面向过程,已经是一个老生常谈的问题,我在这里不想大篇幅说一大推什么东西,结果其实懂还是没懂,都很难说。我从自己编程的经验来看。

    面向对象的精髓有3个:面向接口编程(接口这里指的是抽象)解耦,还有一个忘了

    面向对象的特征有四个:封装,继承,抽象,多态,这些特征绝对不是从语言上来去描述,而是什么,而是是从面向对象的思想角度去想得。

     前几天看了个KNN算法,用Java语言编写程序是:直接写个Main函数,然后写几个函数实现下,虽然什么也实现了,虽是面向对象语言,但还是面向过程思维,面向对象思维是从局部入手,首先是将很多点,这些地方将其特征给抽象出来,这体现了抽象特征。然后点和点之间有个距离,将其封装起来,不是所谓的抽象,这里更加强调的是封装,将距离结果都给它保存起来。还有很多时候,对象里面还可以保存对象,比如说Arraylist里面可以保存一群对象,比如一群 Users对象,等等,其实结构体也是一种封装啊!第三个至于继承和多态,我个人感觉,没有继承(extends),没有实现(implements)的角度来看的话,就没有多态,那是在看过设计模式,以及考虑问题时,可能存在一种多变,易容易修改的时候,需要考虑到。

    好多算法,我一般都喜欢用Java语言来进行编写。

本文出自 “简答生活” 博客,请务必保留此出处http://1464490021.blog.51cto.com/4467028/1915389

再次理解面向对象和面向过程