Java是一种可以在不同的操作系统上运行的语言。
一、Java三兄弟
一般我们在接触Java 的时候,三个非常像的东西。
(注意,还有一个Javascript没有列出,毕竟差太远了,js和Java的关系约等于雷锋和雷峰塔之间的关系)
分别是:
- JavaEE
- JavaSE
- JavaME 贴个链接,可以看到详细的区别。
以上内容总结一下,我们可以理解为:
- PC机上的Java程序是用JavaSE开发的
- 服务器端的Java程序是用JavaEE开发的
- 移动设备的Java程序是用JavaME开发的
二、JDK是个啥?(拆开来看看)
刚开始学习Java的时候,我们一开始就需要下载一个JDK的东西,这是何方神圣呢?
首先JDK是个缩写,他的全称是Java Development Kit,就是Java开发语言的工具包,
也可以说这玩意是SDK(Software Development Kit)软件开发工具包的一种,只不过他是专用于Java语言开发的工具包。
JDK大体上由三部分组成:
- JVM
- 核心类库
- Java开发组件
1.JVM
JVM的全称叫做Java Virtual Machine(Java虚拟机),它是一个虚拟的计算机,是通过在实际的计算机上仿真模拟各种计算机功能来实现的。相当于电脑里面安装了一个虚拟的电脑。
不同平台(Windows,MacOS,Linux)有不同的JVM虚拟机
2.核心类库
Java自带的,程序员所需要调用的程序。
以上两样东西放一起,就有了一个新的名字:JRE。咱们可以这么说:一个Java虚拟机(Java Virtual Machine,JVM)以及一些标准的类别函数库(Class Library),共同构成了Java的运行环境,也就是JRE。
3.Java开发组件
这个就很多了,我找了半天他们的用法,不一定全,成果咱们见下图好了
三、程序跑起来的原理
我们知道了上面的东西,那么这几样东西怎么配合程序执行的呢?
简单来说就是:编译-->进虚拟机-->运行
- 首先我们想开发一个Java程序,我们取名叫helloworld.java。这个程序通过调用javac开发组件,进行编译,编译完成后产生helloworld.class文件
- 调用java组件,把helloworld.class文件送到虚拟机Jvm里面去运行
- 虚拟机调用Java核心类库里面的东西进行运行。
四、java为什么能跨平台?(简述)
在上一步里,我们java编译后产生的class文件,被送去对应版本的JVM里面,即可被识别运行。
新人笔记,如有错误,还请大神指正! ———————————————— CSDN:小天同学 原文链接:blog.csdn.net/qq_46773111…