(一)了解java

     工作了一年多,总感觉基础什么的太差,好多东西自己感觉理解了但是给别人说的时候自己都会感觉说的东西有问题,总结成一句话:还是自己没有理解清楚。趁着这段时间不忙,将以前学习的内容从基础开始整理一遍,写在博客上最起码能加深印象。回顾以下,知识这东西,长时间不用就忘记了。就和前段时间专门看了springcloud的相关知识,在工作中的项目中页用到了,但是一段时间不用,感觉又忘记了。从这些基础开始,只不过只是为自己加深记忆。

PS:最主要的是自己懒,自己整理的笔记自己都懒得翻,写在博客上面最起码还能看一看。

     我们都知道,java是跨平台的语言,java为什么能够跨平台呢?以下就是java跨平台的原理以及概念性东西。

(1) 平台:指的是操作系统(Windows,Linux,Mac)

(2) 跨平台:Java程序可以在任意操作系统上运行,一次编写到处运行

(3) 原理:实现跨平台需要依赖Java的虚拟机 JVM (Java Virtual Machine)

学习java,肯定得知道jre和jdk:

(1) JRE: Java Runtime Environment

顾名思义,java运行环境,里面主要包括了java虚拟机和java运行所需要的核心类库等,如果想运行一个开发好的java程序,在计算机中只需要安装JRE就行了哈。

(2) JDK: Java Development Kit java开发工具包

JDK是提供给java开发人员使用的,其中就包含了java的开发工具,也包含了JRE。所以安装后JDK后,也就安装了JRE了。

为什么JDK中包含一个JRE呢?
其一,开发完的程序,总需要运行一下看看效果。
其二,也是最重要的,JDK中的开发工具其实都是java语言编写的应用程序,为了方便使用才打包成exe文件,

如果没有JRE,那么这些工具是运行不了的。

上面两者又什么关系呢?通俗的说,就是我们使用JDK去开发java程序,最后会通过JRE对程序进行运行。

PS:犹记,当年培训的第一节课学的就是这些,如何配置环境变量这些,一年多了,该把以前学过的东西整理整理了。

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
Java虚拟机(Java Virtual Machine,JVM)是Java平台的核心组件之一,它是一个用于执行Java字节码的虚拟机。Java源代码通过编译器编译成字节码,然后在JVM上执行。 JVM有三个主要的子系统:类加载子系统、运行时数据区和执行引擎。 1. 类加载子系统:负责将编译后的字节码加载到JVM中。它包括以下步骤: - 加载:查找并加载类的二进制数据。 - 验证:确保被加载的类符合Java语言规范。 - 准备:为类的静态变量分配内存并设置默认初始值。 - 解析:将符号引用转换为直接引用。 - 初始化:执行类的初始化代码,包括静态变量赋值和静态代码块。 2. 运行时数据区:JVM将内存分为不同的区域,用于存储不同类型的数据。主要包括: - 方法区:存储类的结构信息、常量、静态变量等。 - 堆:存储对象实例和数组。 - 栈:每个线程在运行时会创建一个栈帧,用于存储局部变量、操作数栈、方法调用等。 - 本地方法栈:用于支持本地方法调用。 3. 执行引擎:负责执行字节码指令。JVM有两种执行引擎: - 解释器:逐行解释执行字节码。 - 编译器:将热点代码(经常被执行的代码)编译成本地机器码,以提高执行效率。 除了上述三个主要的子系统外,JVM还提供了垃圾回收、即时编译器、安全管理等功能,以及一些诊断和监控工具。 通过深入了解Java虚拟机,开发者可以更好地理解Java程序的运行机制,并进行性能调优、内存管理、垃圾回收等方面的优化工作。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值