什么是解释型和编译型?

首先来举个例子,如果一个美国人想看一本中文书,该怎么办呢?有两种方法,我们可以把整本书翻译成英文,把翻译好的书给他,这样他就能看懂了。我们也可以给他找一个翻译官,翻译官翻译一段,他看一段。这两种方法都可以让他看懂小说。第一种方法就是编译型,翻译整本书的过程就是编译,编译型的效率比较高,因为它是把整本书(文件)都编译了。但当书的内容发生了变化时,就需要重新编译,这算是一个弊端,像c和c++都属于编译型语言。解释型语言的速度没有编译型高,常被应用于如网页和服务器的脚本等对速度要求不高的场景中,如JavaScript和python都属于解释型语言。java更倾向于解释型语言,但它也有编译型语言的特征,java文件首先需要通过java编译器来生成一个class字节码文件,字节码文件再经过类装载器,字节码校验器和解释器,最终来到操作系统,程序就运行起来了。随着时代的发展,硬件的提升使解释型与编译型两者的界限也越来越模糊,现在的电脑至少都是8G的内存,4G内存已经很少了,解释型的效率也是非常高的。

Java程序运行机制

posted @ 2022-05-22 22:35  小赫同学  阅读(203)  评论(0)    收藏  举报