java代码执行原理图 java程序运行代码( 五 )


常量池:这个名词可能大家也经常见,是方法区的一部分 。Class文件除了有类的版本、字段、方法、接口等描述信息外 , 还有一项信息就是常量池 , 用于存放编译期生成的各种字面量和符号引用 。Java虚拟机运行期间,也可能将新的常量放入常量池(如String类的intern()方法) 。
虚拟机栈:线程私有,生命周期与线程相同 。虚拟机栈描述的是Java方法执行的内存模型:每个方法在执行时都会创建一个栈帧用于存储局部变量表、操作数栈、动态链接、方法出口等信息 。每个方法从调用直至执行完成的过程 , 就对应着一个栈帧在虚拟机栈中入栈到出栈的过程 。如果请求的站深度大于虚拟机所允许的深度 , 将抛出StackOverflowError异常,虚拟机栈在动态扩展时如果无法申请到足够的内存,就会抛出OutOfMemoryError异常 。
过最简单的一段代码解释一下,程序在运行时数据区个部分的变化情况 。
(4)通过编译器将Test.java文件编译为Test.class , 利用javap -verbose Test.class对编译后的字节码进行分析,如下图所示:
(5)看看运行时数据区的变化:
java19.0.4是什么版本一、Java的历史和三大版本 原创
2020-09-23 12:38:49
系统用户999
码龄3年
关注
JAVA学习第一天
一、Java的历史和三大版本
1、Java的发展史
Java由sun公司开发,java之父 James Gosling,Java是一门面向对象的编程语言,也称为“高级编程语言”
Java在1994年由sun公司推出 , Java的前身叫oak语言 , 开源 , 免费
Java的版本从JDK1.0开始 到目前的JDK13
目前开发常用版本: JDK8.0、JDK9.0
2、Java语言能做什么
Java语言主要用于互联网应用程序开发,例如 天猫、京东、 大型公司的项目管理系统、手机APP的后台数据支撑系统,主要开发web系统(基于浏览器访问的) ,还有服务器后台存储的数据分析,数据查询等相关系统 。
3、Java的版本分类
a、Java SE (J2SE) Java PlatForm Standard Edition Java的标准版本(称为Java基?。?
c、JavaME (J2ME) Java PlatForm Microsoft Edition Java的微型版本
在这里插入图片描述

二、Java的开发环境
1、配置开发环境
第一步 下载jdk 并安装,建议安装在默认c盘 (下载)
第二步 配置环境变量
JAVA_HOME:C:\Program Files\Java\jdk1.8.0_144
在path路径下,配置 %JAVA_HOME%\bin , 需要将该路径放置path的最前面,或者直接在path下配置 “C:\Program Files\Java\jdk1.8.0_144\bin”
第三步:测试
win+r : 运行窗口 中输入cmd
在这里插入图片描述
输入 javac
在这里插入图片描述
环境变量配置成功
三、Java的第一个程序及运行原理
Java程序是一个 以.java结尾的文件 , 称为“源程序”
Java程序需要运行 ,必须经过两个步骤: 先编译再运行,将源程序先编译成.class文件,编译后的class文件称为“字节码”文件  , 然后再由Java虚拟机(JVM)运行 文件 , 最后得到结果。
在这里插入图片描述
JDK : Java Development Kit Java开发工具 ,包括Java开发中运用的所有工具(包,接口API等,运行环境等)
JRE :Java Runtime Environment Java运行环境,运行Java程序需要的相关依赖
JVM : Java Virtual Mechine Java虚拟机器,用于运行Java程序实现跨平台虚拟计算机 。
在这里插入图片描述
]JVM 的组成部分
1、寄存器(程序计数器)
2、本地方法区
3、堆区(堆内存)
4 、栈区(栈内存)

推荐阅读