JAVA重拾1

简介: data:2018/4/21 00:01

java的运行过程实质?


源代码被编译然后被解释成机器语言


源代码--->编译器--->字节码--->解释器---机器码

.java--->Compiler--->.class--->Interpreter---Machine code

生米--->锅--->熟饭--->筷子---品尝

Compiler+Interpreter构成JVM虚拟机的基本功能


静下来分析可以发现java的整个运行过程只是把生米煮成熟饭最后用筷子

源代码就是生米(没有正常人会把生米拿来吃吧?)

编译器就是(有各种型号的锅,但目的都一样:加工食材)

字节码就是熟饭(熟饭还是要用工具来进食的)

解释器就是筷子(就像有些人只食口前饭)

机器码就是品尝过程了

整个过程JVM负责2次转译,可以看出效率并不高,但是正是因为他的存在才让JAVA可以一次编写,随处可用

提一个不专业的疑问:

可否将JVM看成给每个平台都是定制的,而程序是一个相对单一的,这一点貌似在hibernate框架的多对多映

射中有相似处



相关文章
|
1月前
|
存储 Java 程序员
Java灵魂拷问13个为什么,你都会哪些?
【11月更文挑战第6天】本文回答了一些常见的 Java“灵魂拷问”,包括 Java 跨平台的原因、垃圾回收机制的作用、接口不能有实例变量的原因、字符串不可变的好处、异常处理机制的意义、类加载机制的双亲委派模型、多线程同步机制的重要性、重写方法访问修饰符的限制、包装类的存在意义、`equals()` 和 `hashCode()` 方法一起重写的原因、静态方法不能被重写的原因、`ArrayList` 扩容策略的权衡,以及 `final` 关键字的多种用途。
|
7月前
|
移动开发 Cloud Native Java
java进化史
Java进化史见证了编程语言从诞生到成熟的整个过程,以及其在全球范围内的广泛应用。从1995年Java语言首次发布至今,Java已经走过了二十多年的历程,期间经历了数次重要的版本更新和技术变革。本文将回顾Java的进化历程,分析关键版本的特点与影响,并探讨Java未来的发展趋势。
|
7月前
|
Java
L3-3 神坛(Java)
L3-3 神坛(Java)
53 0
|
Kubernetes Oracle Java
2022 年 Java 将何去何从?
自从我们在《2020 年 Java 将何去何从》(Where's Java Going In 2020)中深度探讨 Java 生态系统以来,已经有一段时间了。JRebel 最新发布的《2022 年 Java 发展趋势和分析》报告(Java Development Trends and Analysis 2022)为我们提供了一个契机,可以重新审视 Java 生态系统。那么,根据 JRebel 的报告,这篇《2022 年的 Java 将何去何从》便出炉了。
1468 0
2022 年 Java 将何去何从?
|
JSON Kubernetes Cloud Native
Java真的要没落了?
最近也收到很多后端同学的提问,为什么Go的web框架速度还不如Java?为什么许多原本的 Java 项目都试图用 go 进行重写开源?Java会不会因为容器的兴起而没落?Java这个20多年的后端常青树难道真的要走下坡路了?橙子邀请了淘系技术部的同学对以上问题进行解答,也欢迎大家一起交流。
Java真的要没落了?
|
JSON Java Android开发
从《Java特种兵》中感知老A的世界
从《Java特种兵》中感知老A的世界
139 0
Java自留地(10)
原文内容已经删除。
831 0
Java自留地(12)
原文内容已经删除
624 0