jvm


jvm

为什么jvm很重要

	  1.任何java上的技术问题,都可以追溯到jvm上.
	  2.当前社会一些公司,衡量java技术水平,看懂多少jvm知识

世界上有多少种jvm

	oracle官方
	IBM J9
	TaobaoVM  等等
	一些大型公司(淘宝,阿里巴巴,腾讯)为了解决一些高并发等问题都会在
	oracle官方jvm的规范上进行一些更改.

为什么叫虚拟机

	1.普通的应用程序运行在操作系统之上,应用程序需要进行一些操作,就得向操作系统申请分配内存资源.
	2.	java程序运行在java虚拟机之中,java虚拟机运行在操作系统之中.
	对于java程序来说,java虚拟机就是操作系统,就是一台计算机
	Java程序>Java虚拟机>操作系统

jvm作用

跨平台

		1.c语言,汇编语言等一些古老的编程语言不能跨平台,因为它们代码编译之后会与cpu,操作系统等底层产生关联.
		2.众所周知,一个,java文件编译后是一个字节码(.class)文件.jvm有多种不同版本(window系统有专门的JVM,Linux也有专门的JVM,苹果系统)由jvm将字节码文件翻译为平台相关的指令,这也就实现了jvm的跨平台

jdk8不同版本

jdk与jre目录

jdk目录一般用于我们程序猿开发用
jre用于运行class文件用,无编译功能
在这里插入图片描述

自动内存管理(垃圾回收)

转载:
JVM自动内存管理机制

jvm如何启动

java.exe > jvm.dl l> rt.jar > main
在这里插入图片描述
dll文件是Windows系统的动态链接库
rt.jar是java语言的核心类库(java.lang,java.util等等包)
在这里插入图片描述

jvm总体结构

在这里插入图片描述
类加载器:加载class文件
方法区:存放class文件
堆:存放创建的对象
栈的特点:
FILO先进后出(栈就是先进后出)
第一个进去的,最后一个出来
FILO先进先出(队列就是先进先出)
第一个进去的,先出来


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值