初学java,遇到的陌生词语(1)

初学java,遇到的陌生词语(1)

字节码文件:不包含硬件信息,完全与硬件平台无关,因此,无法直接由操作系统来运行。

Java应用程序的执行过程:代码装入、代码检验、代码执行。

初学java,遇到的陌生词语(1)

1、代码装入:由类装配器完成,装入程序运行时所需的所有源代码(包含调用到的其他类),装入后该类被放在自己的命名空间。此时该类对其他类不再依赖,运行系统可以根据这些类,确定运行程序的内存布局;

2、代码检验:由字节码验证器进行安全检查,确保字节码正确无误;

3、代码执行:执行方式有两种。一是解析执行方式,通过“解释器”,将字节码翻译为要求平台的机器码,然后,传送到“运行支持器”的机器码被其送往硬件进行执行。执行过程一边编译,一边执行,称为解释执行。Java一般都采用这种方式;二是即使编译方式:代码生成器可以将字节码一次性的全部编译为适用于要求硬件平台的机器码,最后送往硬件进行执行。针对于对速度要求很高的程序,Java采用这种方式。

Java虚拟机(JVM):虚拟软件平台。为了能让编译生成的字节码更好的解释执行,通常将其划分为6个功能模块:JVM解释器、指令系统、寄存器、栈、存储区和碎片回收区。

JVM解释器:字节码转换成CPU执行的机器指令;

指令系统:与硬件计算机相似;

寄存器:4个常用的32位寄存器:pc(程序计数器)、optop(操作数栈顶指针)、frame(当前执行环境指针)、vars(执行第一个局部变量的指针);

栈:JVM栈是指令执行时数据和信息存储的场所和控制中心,它提供给JVM解释器运算所需的信息;

存储区:JVM存储区用于存储编译后的字节码信息,提供处理的原料;

碎片会收取:将使用后的Java类的具体实例从内存中进行回收,实现自动化释放内存。

JVM的运用让Java实现了“一次编译,处处运行”,它是整个运行系统的核心。

JDK:是Sun公司房补的免费的Java开发工具,有三个成员:J2EE、J2SE、J2ME;

J2EE:用于可扩展的企业级应用Java 2平台之上;

J2SE:用于工作站和PC机的Java标准平台之上;

J2SE:用于嵌入式消费电子平台之上。

若按其运行的操作系统划分:JDK分别有for Windows、for Linux、for Solaris和MacOS等不同版本。(JDK自身向下兼容)

 

转载于:https://www.cnblogs.com/zhangyixian-Blog/p/5645517.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/108951.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)
blank

相关推荐

  • 反射入门_入门教程

    反射入门_入门教程反射package com.atguigu.java;import java.lang.reflect.Constructor;import java.lang.reflect.Field;import java.lang.reflect.Method;public class Person { private String name; public int age; public Person() { } public void setName(S

  • mysql优化 面试_数据库优化方案整理

    mysql优化 面试_数据库优化方案整理点赞是一种积极的生活态度!有支持才有动力!微信搜索公众号【达摩克利斯之笔】获取更多资源,文末有二维码!前言数据库优化是一个老生常谈的问题,刚入门的小白或者工作N年的光头对这个问题应该都不陌生,你要面试一个中高级工程师那么他就想”哥俩好”一样那么粘,面试官肯定会问这个问题,这篇文章我们就和它哥俩好!而且这个问题就是一个送分题,数据库的优化方案基本就是那些,答案也都是固定的,大家只要好好…

    2022年10月27日
  • 分析型数据库 AnalyticDB学习 —-基本介绍

    分析型数据库 AnalyticDB学习 —-基本介绍分析型数据库AnalyticDB学习—-基本介绍AnalyticDB简介阿里巴巴自主研发的海量数据实时并发在线分析的云计算服务,可以在毫秒级针对千亿级数据进行多维分析和业务探索.具备海量数据的自由计算和极速响应能力(数据很多,反应很快,计算很快,可以处理高并发这个意思)Analytic核心功能和特点*Analytic核心功能(1) 分档的储存(2) 自由的查询(3) …

  • http的幂等性[通俗易懂]

    一.什么是幂等性幂等(idempotent):在编程中.一个幂等操作的特点是其任意多次执行所产生的影响均与一次执行的影响相同.幂等函数,或幂等方法,是指可以使用相同参数重复执行,并能获得相同结果的函数。这些函数不会影响系统状态,也不用担心重复执行会对系统造成改变。例如,“setTrue()”函数就是一个幂等函数,无论多次执行,其结果都是一样的.更复杂的操作幂等保证是利用唯一交易号(流水号)实

  • vue 分页请求「建议收藏」

    vue 分页请求「建议收藏」简单说一下vue中数据分页请求的做法首先引入Loadmore:import{Loadmore}from’mint-ui’;注册组件:components:{‘v-loadmore’:Loadmore},接下来:<v-loadmore:bottom-method="loadBottom":bottom-all-loaded="allLoa…

  • voliate和synchronized「建议收藏」

    voliate和synchronized「建议收藏」线程安全考虑三个方面:原子性,可见性,有序性为什么使用voliate关键字?我们先来看正常情况下线程的执行

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号