java语言的特性
-
在Java语言当中真正操作内存的是:JVM(Java虚拟机)
所有的java程序都是运行在Java虚拟机当中的。
而Java虚拟机执行过程中再去操作内存。 -
java是完全面向对象的语言
-
健壮性:java内置自动垃圾回收机制(cg机制)
-
java 完美支持多线程并发 |可移植性
JDK、JRE、JVM三者之间的关系
JDK:Java开发工具箱
JRE:java运行环境
JVM:java虚拟机
java程序从开发到运行最终经历了什么
编译期:(可以在windows上)
第一步:在硬盘的某个位置(随意),新建一个xxx.java文件
第二步:使用记事本或者其它文本编辑器例如EditPlus打开xxx.java文件
第三步:在xxx.java文件中编写“符合java语法规则的”源代码。
第四步:保存(一定要将xxx.java文件保存一下)
第五步:使用编译器(javac【JDK安装后自带】)对xxx.java文件进行编译。
第六步:如果xxx.java文件中编写的源代码是符合语法规则的,编译会通过,
如果xxx.java文件中编写的源代码违背了语法规则,那么编译器会报错,编译器
报错之后class文件是不会生成的,只有编译通过了才会生成class字节码文件。
并且一个java源文件是可以生成多个class文件的。(编译实质上是检查语法)
运行期(JRE在起作用):(可以在windows上,也可以在其他的OS上。)
第七步:如果是在Linux上运行,需要将windows上生成的class文件拷贝过去
不需要拷贝源代码,真正运行的是字节码。(但是源代码也不要删除,有用)
第八步:使用JDK自带的一个命令/工具:java(负责运行的命令/工具)执行字节码
第九步:往下的步骤就全部交给JVM了,就不需要程序员干涉了。
JVM会将字节码文件装载进去,然后JVM对字节码进行解释(解释器负责将字节码
解释为1010101010..等的二进制)
第十步:JVM会将生成的二进制码交给OS操作系统,操作系统会执行二进制码和
硬件进行交互。
注意:在以上的过程中,需要使用两个非常重要的命令?
javac 命令,负责编译
java 命令,负责运行
小插曲:
xxx.java源文件经过编译之后生成了A.class、B.class、C.class等文件,
那么我们称A是一个类、B是一个类、C是一个类。其中A、B、C是类的名字。
没有为什么,死记硬背,SUN公司的java语法就是这么规定的。
A/B/C是类的名称。A类、B类、C类。
源文件中编写的代码叫做:源代码。
如何运行编译好的代码
- 在将javac/JAVA.exe的路径添加到环境变量中后 打开控制台
- javac 跟 java原文件的路径
- java跟类名的路径
java一点基础语法
1.源代码中只能有1个public class 且源代码文件名称必须与 源代码中主类名称一致
2.源代码中可以有多个class类