博客
关于我
面向过程与面向对象
阅读量:367 次
发布时间:2019-03-05

本文共 503 字,大约阅读时间需要 1 分钟。

面向过程与面向对象

面向过程是一种以过程为中心的开发方法,它强调按照顺序逐步求精,程序结构是按功能划分为若干基本模块,这些模块形成树状结构,各模块之间关系简单且功能相对独立。每一模块通常由顺序、选择和循环等结构组成,实现模块化通常采用子程序的方式。这种方法认为世界由小系统组成,每个系统有明确的开始和结束,之间有严谨的因果关系。

面向对象是一种以对象为核心的程序设计方法。它将数据及其操作封装到一起,形成对象,对象与对象之间通过消息通信。类则是同类对象的抽象,类具有外部接口,与外界发生关系。对象具有封装性、聚合性、继承性、接口性和多态性等特征。

从微观角度看,对象具有封装性,外部只能看到与外界交互的接口,内部是黑匣子。对象可以通过聚合结合,形成更复杂的对象,继承则允许子类继承父类特性,接口定义对象的共同外貌,而多态则让不同对象呈现相同外貌但有不同行为。

从宏观角度,对象具有短视性,它只关注与自己有联系的伙伴,维持耦合关系。对象自私,保护自己领地,通过小窗口进行交流。

面向过程和面向对象各有优劣,前者适合需求明确、结构简单的场景,后者适合复杂系统需求,强调封装性和多态性。两者各有用,应用场景不同。

转载地址:http://jzhg.baihongyu.com/

你可能感兴趣的文章
Oracle零碎要点---多表联合查询,收集数据库基本资料
查看>>
Oracle静默安装
查看>>
Oracle面试题:Oracle中truncate和delete的区别
查看>>
ThreadLocal线程内部存储类
查看>>
thinkphp 常用SQL执行语句总结
查看>>
Oracle:ORA-00911: 无效字符
查看>>
Text-to-Image with Diffusion models的巅峰之作:深入解读 DALL·E 2
查看>>
TCP基本入门-简单认识一下什么是TCP
查看>>
tableviewcell 中使用autolayout自适应高度
查看>>
Orcale表被锁
查看>>
svn访问报错500
查看>>
Orderer节点启动报错解决方案:Not bootstrapping because of 3 existing channels
查看>>
org.apache.ibatis.exceptions.PersistenceException:
查看>>
org.apache.ibatis.exceptions.TooManyResultsException: Expected one result (or null) to be returned
查看>>
org.apache.ibatis.type.TypeException: Could not resolve type alias 'xxxx'异常
查看>>
org.apache.poi.hssf.util.Region
查看>>
org.apache.xmlbeans.XmlOptions.setEntityExpansionLimit(I)Lorg/apache/xmlbeans/XmlOptions;
查看>>
org.apache.zookeeper.KeeperException$ConnectionLossException: KeeperErrorCode = ConnectionLoss for /
查看>>
org.hibernate.HibernateException: Unable to get the default Bean Validation factory
查看>>
org.hibernate.ObjectNotFoundException: No row with the given identifier exists:
查看>>