码迷,mamicode.com
首页 > 其他好文 > 详细

面向过程与面向对象对比

时间:2019-10-02 16:26:46      阅读:152      评论:0      收藏:0      [点我收藏+]

标签:对比   优势   via   lpn   内存   性能   uil   hsi   jci   

  为什么有人会说面向过程性能比面向对象高?面向对象的语言易维护、易复用、易扩展。以java为例, 由于Java有封装、继承、多态性的特性,所以可以设计出低耦合的系统,使系统更加灵活、更加易于维护。但是Java在类调用时需要实例化,所以开销比较大,比较消耗资源。
  以上并不是根本原因,面向的过程的也需要分配内存以及计算偏移量等。Java是半编译语言,最终的执行代码并不是可以直接被CPU执行的二进制机械码,而面向过程的语言大多直接被编译成了机器码在计算机上运行,这才是主要原因。程序的性能首先与编程语言的执行方式有关,其次才是设计范式。以C和C++为例,二者的设计思想不同,但执行效率相近,其根本原因在于它们的运行机制是一样的。
  现代计算机的运行速度很快,只要性能不是最重要的因素的场景比如单片机、嵌入式开发等,面向对象语言在开发效率上的优势是很明显的。Java在部分虚拟机的实现中也引入了即时编译器(JIT)去优化Java程序的运行机制。
  

面向过程与面向对象对比

标签:对比   优势   via   lpn   内存   性能   uil   hsi   jci   

原文地址:https://www.cnblogs.com/lshuoshuo/p/11617579.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!