社区
非技术区
帖子详情
请问一个JAVA程序运行机理!
javagoo
2002-03-10 03:07:08
我这方面的概念比较模糊,想请教大家一下!
...全文
43
8
打赏
收藏
请问一个JAVA程序运行机理!
我这方面的概念比较模糊,想请教大家一下!
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
8 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
zosatapo
2002-03-10
打赏
举报
回复
具体的请你参阅《java虚拟机规范》第5章。
主要分成loading ,linking (这里可以细分),initializing and executing.
huanshilang
2002-03-10
打赏
举报
回复
去Java的老家去看看你一定能找到结果的。
javagoo
2002-03-10
打赏
举报
回复
还有其它的建议嘛!
javagoo
2002-03-10
打赏
举报
回复
谢谢大家!
zliang82
2002-03-10
打赏
举报
回复
看书去呐
xhh
2002-03-10
打赏
举报
回复
首先Java编译器把Java文件编译成为Class文件(字节码)。
这个Class文件其实是一串Java指令,等待JVM的执行。
可以把JVM想象成为CPU,把Java指令想象成汇编指令。
运行Java程序时就进入Java运行机制。
Java运行机制分为“Java装入器”、“Java验证器”、“Java解释器”。
首先Java装入器装入所有程序需要的类,并且区分本地和网络上的类,
这样做是为了安全。
然后Java验证器验证字节码,验证代码是否符合JVM规范,
是否引起操作数栈上溢或下溢,参数类型是否准确,是否有非法类型转换等,
这样做也是为了安全性,它防止了黑客的内存溢出等攻击。
最后Java解释器按照JVM规范解释执行字节码,也就像CPU一样执行指令。
如果这个JVM采取了JIT优化,那么它在第一遍执行的时候把Java指令转换
成为与本地操作系统有关的本地代码,以后如果再次执行此代码,就直接
执行转换好的本地代码,这样速度可以逼近C/C++的速度!
iamfancy
2002-03-10
打赏
举报
回复
Java 程序从你需要运行的类中找到 public static void main(String[] args) 函数,如果有,就从它开始运行,如果没有,就报错。
GJA106
2002-03-10
打赏
举报
回复
编辑java程序-->编译生成字节码(class)-->用java解释器解释运行字节码
Java
跨平台运行
机理
:Dos 命令在桌面新建文件夹,并在其中编译、运行一段
Java
程序_在你的d盘或e盘建立子文件夹my
java
,用写字板编辑
一个
java
程序myfirstapp
本文通过依靠本地的 JRE,使用 Windows 的 Shell 命令在桌面新建文件夹,并在该文件夹中编译、运行一段
Java
程序段来揭示
Java
跨平台运行的
机理
。这也是我们在初学
Java
时老师会带我们做的
一个
实验,用于一步一步来理解
Java
的运行流程。
Java
跨平台运行
机理
:Dos 命令在桌面新建文件夹,并在其中编译、运行一段
Java
程序
本文通过依靠本地的 JRE,使用 Windows 的 Shell 命令在桌面新建文件夹,并在该文件夹中编译、运行一段
Java
程序段来揭示
Java
跨平台运行的
机理
。这也是我们在初学
Java
时老师会带我们做的
一个
实验,用于一步一步来理解
Java
的运行流程。
Java
学习笔记(一)——
Java
程序的运行机制
要学习
Java
程序的运行机制,首先了解一下gaojyuyan
java
虚拟机的运行
机理
1
Java
技术与
Java
虚拟机 说起
Java
,人们首先想到的是
Java
编程语言,然而事实上,
Java
是一种技术,它由四方面组成:
Java
编程语言、
Java
类文件格式、
Java
虚拟机和
Java
应用程序接口(
Java
API)。它们的关系如下图所示: 图1
Java
四个方面的关系 运行期环境代表着
Java
平台,开发人员编写
Java
代码(.
java
文件),然后将之编译成字节码(.c
Java
虚拟机(JVM)深度解析:构造与运行
机理
JVM位于操作系统和
Java
应用程序之间,承担着将Class文件翻译为机器码并执行的责任,同时提供了内存管理和垃圾回收等机制。主流的JVM实现—HotSpot,提供了
一个
相当复杂且高效的环境。了解JVM的架构和运作原理对于进行有效的性能优化和问题诊断是不可或缺的。无论是内存管理、垃圾收集策略选择,还是对JVM参数的调整,都需要深刻的理解JVM运行机制。而且,在了解了HotSpot等主流JVM的实现后,开发者可以更加自信地编写更高效、更稳定的
Java
应用程序。
非技术区
23,407
社区成员
70,513
社区内容
发帖
与我相关
我的任务
非技术区
Java 非技术区
复制链接
扫一扫
分享
社区描述
Java 非技术区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章