当前位置: 首页 > news >正文

《深入理解JAVA虚拟机(第2版)》—— 学习笔记1

主要摘录了本书第一章的关键(我个人比较关心的:>)内容。

1、Java 技术体系

我们可以通过两个维度来进行分类:

1.1、根据各个组成部分的功能来划分

主要分为 JDK 和 JRE。

  1. JDK
    Java 程序 开发 的最小环境。Ta 由 「Java 程序设计语言」「Java 虚拟机」、**「Java API 类库」**组成。
  2. JRE
    Java 程序 运行 的标准环境。Ta 由 「Java 虚拟机」、**「Java API 类库中的Java SE API 子集」**组成。

下图为 Java 技术体系的包含的内容(图片来自:https://docs.oracle.com/javase/7/docs/)
在这里插入图片描述

1.2、根据服务的领域来划分(4个平台)

  1. Java Card
    支持一些 Java 小程序(Applets)运行在小内存设备(如:存储卡)上的平台。
  2. Java ME(J2ME)
    支持 Java 程序运行在移动设备平台,对 Java API 有所精简,并加入了针对移动端的支持。
  3. Java SE(J2SE)
    面向桌面级应用的 Java 平台,提供了完成 Java 核心 API
  4. Java EE(J2EE)
    支持使用多层架构的企业应用(如:ERP、CRM应用)的 Java 平台,除了提供 Java SE API 以外,还做了大量的 扩充 并提供相应的部署支持。

在 JavaEE(J2EE)中所谓的对 Java SE API 以外的扩充,一般是以 javax.* 作为包名。JavaSE API 的核心包一般以 java.* 作为包名,但是,由于一些历史原因,这个核心包里也会有一些 javax.* 的包名。

2、OpenJDK 和 Sun/OracleJDK

  • OpenJDK 是 Sun 在 2006 年末将 Java 开源而形成的项目(SunJDK的开源版)
  • Sun/OracleJDK 采用了商用实现,存在一些 OpenJDK 没有的,商业闭源的功能。
  • Sun/OracleJDK 和 OpenJDK 中所带的虚拟机都是 HotSpot VM

相关文章:

  • Idean中的Maven
  • leetcode 17. 电话号码的字母组合
  • 怎样平衡软件质量与时间成本范围的关系?
  • Odoo | 开源ERP,解锁审计和日志记录新玩法
  • c++STL 迭代器失效的三种情况总结
  • cordova 打包android app
  • 【稀里糊涂学Spring MVC】Filter
  • HK-WEKA如何为勒索软件保护和业务连续性提供支持?
  • springboot+mybaties-plus自动建表
  • 企业IP地址跟踪
  • C++ 小游戏 视频及资料集(3)
  • 十、ThreadPoolExecutor 手撕核心源码
  • Refind多引导系统界面
  • 变身小小科学家 南瓜科学让孩子爱上实验
  • 分布式之ZooKeeper概述
  • 08.Android之View事件问题
  • CODING 缺陷管理功能正式开始公测
  • github从入门到放弃(1)
  • JavaScript函数式编程(一)
  • JavaScript设计模式之工厂模式
  • Java基本数据类型之Number
  • Java精华积累:初学者都应该搞懂的问题
  • leetcode388. Longest Absolute File Path
  • log4j2输出到kafka
  • Mac 鼠须管 Rime 输入法 安装五笔输入法 教程
  • nginx 配置多 域名 + 多 https
  • React Native移动开发实战-3-实现页面间的数据传递
  • 对话:中国为什么有前途/ 写给中国的经济学
  • 聊聊springcloud的EurekaClientAutoConfiguration
  • 如何邀请好友注册您的网站(模拟百度网盘)
  • 深度学习中的信息论知识详解
  • 深入浅出Node.js
  • 我从编程教室毕业
  • 我的业余项目总结
  • 学习JavaScript数据结构与算法 — 树
  • 一道面试题引发的“血案”
  • ​中南建设2022年半年报“韧”字当头,经营性现金流持续为正​
  • !!java web学习笔记(一到五)
  • # Pytorch 中可以直接调用的Loss Functions总结:
  • # 数据结构
  • ## 临床数据 两两比较 加显著性boxplot加显著性
  • #1014 : Trie树
  • (02)Cartographer源码无死角解析-(03) 新数据运行与地图保存、加载地图启动仅定位模式
  • (14)学习笔记:动手深度学习(Pytorch神经网络基础)
  • (4)(4.6) Triducer
  • (C++)栈的链式存储结构(出栈、入栈、判空、遍历、销毁)(数据结构与算法)
  • (java)关于Thread的挂起和恢复
  • (四)图像的%2线性拉伸
  • (五)关系数据库标准语言SQL
  • (一)SpringBoot3---尚硅谷总结
  • (原創) 如何將struct塞進vector? (C/C++) (STL)
  • ****Linux下Mysql的安装和配置
  • ... fatal error LINK1120:1个无法解析的外部命令 的解决办法
  • .bat批处理(二):%0 %1——给批处理脚本传递参数
  • .gitignore文件---让git自动忽略指定文件