1、java核心框架是什么样的
我们知道,我们所说的java包含jdk、jre、jvm等(jdk包含jre,jre包含jvm),下面是一个Java SE的模型图(本文部分摘自Oracle官方文档,非常权威):
了解jdk、jre、jvm看这里:什么是Java
了解Java SE看这里:Java都有那些版本
2、jdk都包含哪些组件
jdk主要包含Java Language语言(语法)、Tools(编译器、调试器等)、Jre等,具体如下:
- Java Language
Java编程语言是一种通用的、可并发的、强类型的、基于类的、面向对象的语言。Java语言通常是将代码编译成字节码指令集和Java虚拟机规范中定义的二进制格式。
- Tools
JDK工具集非常重要,包含了编译器、调试器、内存监控、堆栈监控、堆分析、进程线程工具等工具。
了解更多jdk工具机看这里:[jdk工具集都有什么][4]
[4]:
- JRE( Java Runtime Environment)
JRE是运行Java程序所须环境的集合,包含Jvm标准实现、Java核心类库。
3、jre都包含哪些组件
jre包含了若干组件,可以分为几大类:Base Libraries、Other Base Libraries、Integration Libraries、User Interface Libraries、Deployment、Java Virtual Machines,具体如下:
- Base Libraries
基础类库,提供了Java平台最基本特性和功能的类和接口。包括Lang包、Util包、Math包、Reflection包、Collections包等。
了解更多基础类库看这里:[jdk基础类库都有什么][5]
[5]:
- Other Base Libraries
基础类库的补充,是Java平台的补充功能,在特定情况下有重要的作用。包括I/O包、Serialization包、Security包、JNI等。
- Integration Libraries
服务集成类库,每一个组件都可以提供独立、完整的服务,内部逻辑内聚而复杂。包括JDBC、RMI、JNDI、IDL等。
了解更多 服务集成类库看这里:[jdk 服务集成类库都有什么][6]
[6]:
- User Interface Libraries
用户界面类库,提供了UI、图像、声音、交互等服务,目前来说使用场景并不广泛。包括AWT、Swing、Image I/O等。
了解更多用户界面类库看这里:[jdk用户界面类库都有什么][7]
[7]:
- Deployment
java部署,包括jdk的安装、设置、更新、重新分配等,具体如下:
- 在电脑上安装Java平台
- 配置Java平台
- 用java编写应用和程序
- 编写web页面调用applet或下载并启动应用程序
- 在web服务器生成java相关文件
- 在电脑上更新Java平台
- Java Virtual Machines
Java虚拟机(JVM)是一个抽象的计算机指令集,同事操纵运行时的内存。它可以移植到不同的平台,具有硬件和操作系统的独立性。Java SE提供了两种实现的JVM:
- Java HotSpot Client VM
客户端虚拟机是通常用于客户端应用程序。一般通过调优以减少启动时间和内存占用。 使用-client启动应用程序。
- Java HotSpot Server VM
服务器虚拟机以程序执行速度、启动时间和内存占用等指标来设计的,相比客户端虚拟机在性能方面有很大提升。使用-server启动应用程序。
- Java HotSpot Client VM