1、概述

1991 年Sun 公司的James Gosling 等人开始开发名称为 Oak 的语言,希望用于控制嵌入在有线电视交换盒、PDA 等的微处理器;1994 年将Oak 语言更名为Java;

  java广泛应用于嵌入式系统、移动终端、企业服务器、大型机等各种场合,摆脱了硬件平台的束缚,实现了“一次编写,到处运行”的理想

2、java技术体系结构

  按照功能来划分

    包括以下几个组成部分:

  1. Java程序设计语言
  2. 各种硬件平台的java虚拟机
  3. Java API类库,来自商业机构和开源社区的第三方Java类库,Class文件格式
  4. java 虚拟机

Java程序设计语言,java虚拟机,Java API类库统称为JDK,是用于支持java程序开发的最小环境

Java API类库中的Java SE API子集和Java虚拟机统称为JRE,是支持java程序运行的基本环境

  按照技术所服务的领域划分分为4个平台

  1. Java Card:支持java小程序运行在java小内存设备(如智能卡)上的平台
  2. Java ME:支持Java程序运行在移动设备上的平台
  3. Java SE:支持面向桌面级应用的平台
  4. Java EE:支持使用多层架构的企业级应用的平台

3 java虚拟机 称 JVM 也称 javv 解释器

java面象网络核心就是网java 虚拟机,它支持java面向网络体系结构三大支柱

1)平台无关性

2)安全性

3)网络移动性

所谓jvm,又名java虚拟机。我们平常写java程序的时候几乎是感觉不到jvm的存在的,我们只需要根据java规范去编写类,然后就可以运行程序了,当然只有我们程序出现bug了,我们才有可能在控制台上看到一些jvm报错的信息,比如内存溢出异 常 等。

   java之所以能够跨平台,就是因为jvm屏蔽了各个操作系统之间的差异

JVM是Java Virtual Machine的缩写。它是一种基于计算设备的规范,是一台虚拟机,即虚构的计算机。

Java 虚拟机(JVM)是执行已编译 Java 字节码的软件。它是 Java 平台的重要组成部分,包括程序、规范、库和数据结构,让它们协同工作。Java 字节码是指编译好的 Java 程序中使用的机器语言的名字。

JVM 执行的编译程序包含了 Java 字节码。每个 Java 源程序都必须编译为 Java 字节码(形式为 .class 文件)后才能执行。包含 Java 字节码的程序可以在任何安装了 Java 运行时软件的计算机系统上执行。

java 虚拟机的玉要任务是装载clas 文件并且执行其中的字节码。

不同的java虚拟机中,执行引擎可能实现得非常不同

java 虚拟机JVM相关推荐

  1. Java虚拟机JVM学习06 自定义类加载器 父委托机制和命名空间的再讨论

    Java虚拟机JVM学习06 自定义类加载器 父委托机制和命名空间的再讨论 创建用户自定义的类加载器 要创建用户自定义的类加载器,只需要扩展java.lang.ClassLoader类,然后覆盖它的f ...

  2. Java虚拟机JVM学习05 类加载器的父委托机制

    Java虚拟机JVM学习05 类加载器的父委托机制 类加载器 类加载器用来把类加载到Java虚拟机中. 类加载器的类型 有两种类型的类加载器: 1.JVM自带的加载器: 根类加载器(Bootstrap ...

  3. 《深入理解Java虚拟机 - Jvm高级特性与最佳实践(第三版)》阅读笔记

    <深入理解Java虚拟机>阅读笔记 本repository为<深入理解Java虚拟机 - Jvm高级特性与最佳实践(第三版)>阅读笔记,因为第一章主要讲的是Java的发展历史, ...

  4. 深入理解Java虚拟机——JVM类加载机制(类加载过程和类加载器)

    一.什么是类加载机制? 虚拟机把描述类的数据从Class文件加载到内存,并对数据进行校验.转换解析和初始化,最终形成可以被虚拟机直接使用的Java类型,这就是虚拟机的类加载机制. 二.类加载的时机 类 ...

  5. Java虚拟机JVM简单理解

    Java虚拟机JVM的作用: Java源文件(.java)通过编译器编译成.class文件,.class文件通过JVM中的解释器解释成特定机器上的机器代码,从而实现Java语言的跨平台. JVM的体系 ...

  6. [java] 虚拟机(JVM)底层结构详解[转]

    [java] 虚拟机(JVM)底层结构详解[转] 本文来自:曹胜欢博客专栏.转载请注明出处:http://blog.csdn.net/csh624366188 在以前的博客里面,我们介绍了在java领 ...

  7. Java虚拟机JVM的内部体系结构

    JVM(Java虚拟机)是一个抽象机器. 它是一个提供可以执行Java字节码的运行时环境的规范.JVM可用于许多硬件和软件平台(即JVM是平台相关的). 什么是JVM? JVM(Java虚拟机)是: ...

  8. [转载] java虚拟机 jvm 出入java栈 栈空间内存分配

    参考链接: Java虚拟机(JVM)堆栈区域 java栈空间是一块线程私有的内存空间,java堆和程序数据密切相关,那么java栈就是和线程执行密切相关.线程最基本的执行行为就是函数的调用.每次函数调 ...

  9. java虚拟机MyEclipse_Eclipse和MyEclipse运行环境java虚拟机jvm设置,自己设置jre

    Eclipse运行环境java虚拟机jvm设置,自己设置jre 浅谈Eclipse寻找JVM(JRE)的顺序机制 Eclipse也是一个普通的Java程序,因此必须有一个JRE做为运行环境. 如果你的 ...

  10. 深入理解java虚拟机 - jvm高级特性与最佳实践(第三版)_JVM虚拟机面试指南:年薪30W以上高薪岗位需求的JVM,你必须要懂!...

    JVM的重要性 很多人对于为什么要学JVM这个问题,他们的答案都是:因为面试.无论什么级别的Java从业者,JVM都是进阶时必须迈过的坎.不管是工作还是面试中,JVM都是必考题.如果不懂JVM的话,薪 ...

最新文章

  1. 你可能不知道的小程序
  2. CSLA.Net 3.0.5 项目管理示例 名值列表基类、只读基类、业务负责人基类
  3. css border制作小三角形状及应用(兼容IE6)
  4. Git pull[push] 不用每次输入用户名和密码
  5. PostgreSQL的 array_to_string 功能
  6. tomcat配置与优化
  7. 小白的奇幻数学课堂(part2)--敌人的敌人就是朋友,这其实就是负负得正法则
  8. 爸爸的素质决定孩子飞多高,爸爸们请反复看!!!
  9. 防止Visual C++应用程序缓冲区溢出
  10. [堆] Jzoj P5861 失意
  11. ASP.NET的Session会导致的性能问题
  12. android按键静音键功能实现
  13. spring boot 集成 websocket 实现消息主动推送
  14. c语言变量大全,C语言变量
  15. 递归函数c语言结束条件,满足动态条件时退出递归函数
  16. 工作几年了,还没成为“算法人上人”?
  17. linux+手机+gps,Linux环境下利用GPS+蓝牙实现移动定位
  18. fwr310刷openwrt_全网首拆迅捷FWR310 V4.0 300M 路由硬改后刷华硕N14U
  19. 华为认证之HCIP-Video Conference
  20. 02 【字符实体与语义标签(上)】

热门文章

  1. entity、model、domain三个包名的意思
  2. 集成方法-随机森林和AdaBoost
  3. 广工计算机学院男女比例,广东高校新生数据大揭秘,哪所大学男女比例最大
  4. 【dBi、dBd和dBic的含义你真的知道吗?】
  5. element UI-远程搜索(el-select)
  6. MySQL的事务总结(事务特性,隔离级别,脏读,不可重复读,幻读,常见问题)
  7. JDK11 API 帮助文档下载【中文版】
  8. 2019牛客暑期多校训练营(第九场)Quadratic equation(二次剩余
  9. SpringAop代理模式
  10. 常用的Java转义字符