解释型 是说不需要编译,每次执行的时候 再去转为机器语言运行。而是否面向对象,是说的语言的模式,是面向过程 还是面向对象的。
所以 这俩没什么关联,是不同的分法。
比如说 shell 脚本语言,这个就是解释型的,但是它不是面向对象的。java语言,这个既是解释性语言也是面向对象语言。类似的 还有basic等等
这里在来区分一下面向对象和面向过程语言:
- 面向对象
面向对象是将构成问题的事物,分解成若干个对象,建立对象的目的不是为了完成一个步骤,而是为了描述某个事物在解决问题过程中的行为。面向对象思想偏向于了解一个人,这个人的性格、特长是怎么样的,有没有遗传到什么能力,有没有家族病史。比如你要过去 ,不在乎你是坐车还是走过去。
优点:易维护、易扩展、易复用,有封装、继承、多态的特性、更容易设计出耦合的系统。
缺点:性能比面向过程低。
- 面向过程
面向过程直接将解决问题的步骤分析出来,然后用函数把步骤一步一步实现,然后再依次调用就可以了。面向过程思想偏向于我们做一件事的流程,首先做什么,其次做什么,最后做什么。
优点:流程化使得编程任务明确,在开发之前基本考虑了实现方式和最终结果,具体步骤清楚,便于节点分析。效率高,面向过程强调代码的短小精悍,善于结合数据结构来开发高效率的程序。
缺点:需要深入的思考,耗费精力,代码重用性低,扩展能力差,后期维护难度比较大。
再来区分一下解释性和编译性语言:
- 解释性
解释型语言每次运行是需要将源代码解释成机器码,然后才能够执行,编译型语言一次编译成机器语言文件,以后就不需要再编译。解释型语言运行效率比较低
- 编译性
编译型语言一次编译成机器语言文件,以后就不需要再编译。编译型语言运行效率高