首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >Java 技术体系简介

Java 技术体系简介

作者头像
全栈程序员站长
发布2022-09-08 10:09:55
发布2022-09-08 10:09:55
6100
举报

大家好,又见面了,我是你们的朋友全栈君。

Java 技术包含的所有内容:

1、Java技术体系

2、Java 一次编译,到处运行

Java技术的核心就是Java虚拟机,因为所有的Java程序都在虚拟机上运行。Java程序的运行需要Java虚拟机、Java API和Java Class文件的配合。Java虚拟机实例负责运行一个Java程序。当启动一个Java程序时,一个虚拟机实例就诞生了。当程序结束,这个虚拟机实例也就消亡。 Java支持平台无关性、安全性和网络移动性。而Java平台由Java虚拟机和Java核心类所构成,它为纯Java程序提供了统一的编程接口,而不管下层操作系统是什么。 正是因为它有针对不同平台的虚拟机,它号称的“一次编译,到处运行”的跨平台特性才能有所保障。

3、JDK 与 JRE

JDK = JREJava API类库中除Java SE API子集以外的部分Java程序设计语言

(1)JDK

(2)JRE

4、Java程序执行流程

java程序执行过程分为两步,下图为流程示意图

代码语言:javascript
复制
  第一步:将java源码(.java文件)通过编译器(javac.exe)编译成JVM文件(.class文件)
  
  第二步:将JVM文件通过java.exe执行,输出结果

(1)JDK文件

(2)Java程序的执行依赖于编译环境和运行环境。源码代码转变成可执行的机器代码,由下面的流程完成:

5、字节码(.class)文件

(1)概念

● Java字节码类文件(.class)是Java编译器编译Java源文件(.java)产生的“目标文件”。 它是一种8位字节的二进制流文件,各个数据项按顺序紧密的从前向后排列, 相邻的项之间没有间隙, 这样可以使得class文件非常紧凑,体积轻巧,可以被JVM快速的加载至内存, 并且占据较少的内存空间(方便于网络的传输)。

● Java源文件在被Java编译器编译之后, 每个类(或者接口)都单独占据一个class文件, 并且类中的所有信息都会在class文件中有相应的描述, 由于class文件很灵活, 它甚至比Java源文件有着更强的描述能力。

● class文件不可以被系统直接执行,而是需要虚拟机解释执行

● class文件中的信息是一项一项排列的,每项数据都有它的固定长度。数据项的不同长度分别用u1, u2, u4, u8表示, 分别表示一种数据项在class文件中占据一个字节, 两个字节, 4个字节和8个字节。

(2).class文件结构

.class文件示例:

从上面的字节码文件中我们可以看到,里面就是一堆的16进制字节。.class文件各种类型如下:

class文件只有两种数据类型:无符号数和表。

(2).class文件解读

具体参考 class描述文件解读

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/157008.html原文链接:https://javaforall.cn

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1、Java技术体系
  • 2、Java 一次编译,到处运行
  • 3、JDK 与 JRE
  • 4、Java程序执行流程
  • 5、字节码(.class)文件
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档