java程序运行机制
java程序运行机制
-
编译型
编译型语言在程序执行之前,有一个单独的编译过程,将程序翻译成机器语言就不用再进行翻译了。
开发操作系统等用的偏多。
eg:C、C++ 等
-
解释型
解释型语言,是在运行的时候将程序翻译成机器语言。
开发网页、服务器、脚本等用的偏多。
eg:Java、C#、python、JavaScript等
-
区别
执行的时机不同,
主要区别在于:
编译型:源程序编译后即可在该平台运行。
解释型:源程序是在运行期间才编译。
所以前者运行速度快,后者跨平台性好。
-
java程序运营机制
java既有编译型也有解释型特点。
Java和其他的语言不太一样。因为java针对不同的平台有不同的JVM,实现了跨平台。所以Java语言有一次编译到处运行的说法。
-
你可以说它是编译型的:因为所有的Java代码都是要编译的,需要java编译器提前预编译成class文件,java不经过编译就什么用都没有。
-
你可以说它是解释型的:因为java代码编译后不能直接运行,它是解释运行在JVM上的,所以它是解释运行的,那也就算是解释的了。
-
但是,现在的JVM为了效率,都有一些JIT优化。它又会把.class的二进制代码编译为本地的代码直接运行,所以,又是编译的。
-
-
java程序执行流程:
源文件(.java文件) --> java编译器 --> 字节码(.class文件) --> 类加载器 --> 字节码校验器 --> 解释器 --> 操作系统平台。
欢迎一起来学习和指导,谢谢关注!
本文来自博客园,作者:xiexie0812,转载请注明原文链接:https://www.cnblogs.com/mask-xiexie/p/14502862.html
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· DeepSeek 开源周回顾「GitHub 热点速览」
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了