当前位置:网站首页>3: Chapter 1: understanding JVM specification 2: JVM specification, introduction;
3: Chapter 1: understanding JVM specification 2: JVM specification, introduction;
2022-07-05 23:12:00 【Small withered forest】
explain :
(1) Brief introduction JVM standard , understand JVM What are norms ;
Catalog
1.JVM standard , brief introduction ;
Virtual machines must have specifications ( Or standard ), such as class If there is no certain specification in the document , Virtual machines cannot recognize this class;
1.JVM standard , brief introduction ;
(1) Virtual machines don't know .java file , They only know .class file ;
● We write .java When it comes to programming , We need to comply java Grammatical norms of ;
● We are still in the virtual machine .class When you file , This .class Files should conform to the specifications of virtual machines ;
(2) As long as a file is a 【 Conform to the specification of virtual machine .class file 】, Virtual machines can be loaded and run ;
● So at this time , It provides the independence of the development language in disguise ;
● such as , We use java Language development program can be compiled into 【 Conform to the specification of virtual machine .class file 】;;; We use jRuby The program developed by language can also be compiled into 【 Conform to the specification of virtual machine .class file 】;
● namely , As long as the code written in a certain language , Can be compiled as 【 Conform to the specification of virtual machine .class file 】, these .class Can be loaded and run by virtual machines ;
● even to the extent that , We don't use any language , Instead, write directly .class file ( such as ASM,CGLib Technology ;; These technologies are in Spring In the frame , Have large-scale applications );
● PS: Virtual machines are not just for .class The specification of , There are many other specifications ;
(3)JVM The specification states that ,JVM It can be used 【 The software simulates and runs on various existing computer systems 】 To achieve , It can also be implemented using hardware ;( We generally do not consider hardware implementation )
……………………………………………………
(4)JVM The specification of , It just stipulates what to do ; It does not specify how we should implement ;
● therefore , For this same virtual machine specification , Different virtual machine manufacturers have their own implementation methods ;
● that , In this way , The same procedure , If you put it into virtual machines of different manufacturers , The implementation process and details are not exactly the same ;
2.JVM standard , What is covered ;(PS: There is no need to go too deep into the virtual machine specification , Understanding can )
(1) Bytecode instruction set ( It's the CPU CPU);
(2)Class File format ;
(3) Data types and values ;
● For example, the types of these values 、 Range 、 Requirements for basic implementation ;
(4) Run time data area ;
● We wrote java Program , When you run , We must operate some data ;
(5) Stack frame ;
(6) Special methods ;( Specified in the specification , Implementation of some special methods to be provided by virtual machine )
(7) Class library ;( The virtual machine is required to support some class libraries , To provide some basic functions , Or functions that applications cannot provide ;;; For example, yes. JNI Support for , Interaction with hardware ;;; If the virtual machine does not provide these functions , Applications are uncertain ;)
(8) Some handling of exceptions ;
(9) Start of virtual machine 、 load 、 Linking and initialization ;
……
stay Oracle Its official website 【Java SE Specifications】 You can download the specifications of each version of virtual machine ;
It can also be in 【Java Downloads | Oracle】 Go up and download JDK;
边栏推荐
- Composition of interface
- LabVIEW打开PNG 图像正常而 Photoshop打开得到全黑的图像
- Judge whether the binary tree is a complete binary tree
- Krypton Factor-紫书第七章暴力求解
- Calculating the number of daffodils in C language
- Thoroughly understand JVM class loading subsystem
- Go语言实现原理——锁实现原理
- Element positioning of Web Automation
- 一文搞定JVM的内存结构
- TypeError: this. getOptions is not a function
猜你喜欢

MoCo: Momentum Contrast for Unsupervised Visual Representation Learning

Southeast Asia e-commerce guide, how do sellers layout the Southeast Asia market?

Element positioning of Web Automation

30 optimization skills about mysql, super practical

Thoroughly understand JVM class loading subsystem

Matlab smooth curve connection scatter diagram

How to quickly understand complex businesses and systematically think about problems?

Non rigid / flexible point cloud ICP registration

SPSS analysis of employment problems of college graduates
![[speech processing] speech signal denoising and denoising based on MATLAB low-pass filter [including Matlab source code 1709]](/img/f4/4d09dc05f5789b980ebd23cc352f8b.jpg)
[speech processing] speech signal denoising and denoising based on MATLAB low-pass filter [including Matlab source code 1709]
随机推荐
第十七周作业
Three.js-01 入门
透彻理解JVM类加载子系统
Ultrasonic sensor flash | LEGO eV3 Teaching
Use of grpc interceptor
The method and principle of viewing the last modification time of the web page
What is the process of building a website
傅里叶分析概述
d3dx9_ How to repair 31.dll_ d3dx9_ 31. Solution to missing DLL
Composition of interface
Data type, variable declaration, global variable and i/o mapping of PLC programming basis (CoDeSys)
One article deals with the microstructure and instructions of class
Global and Chinese markets of industrial pH meters 2022-2028: Research Report on technology, participants, trends, market size and share
Alibaba Tianchi SQL training camp task4 learning notes
Multi camera stereo calibration
TOPSIS code part of good and bad solution distance method
关于MySQL的30条优化技巧,超实用
Element positioning of Web Automation
2022 G3 boiler water treatment simulation examination and G3 boiler water treatment simulation examination question bank
终于搞懂什么是动态规划的



