注:搭建环境请参考评论区我放的链接,亲测可行。
1. java的基本特性(开源、免费、纯面向对象、跨平台)
(1) 简单性
java语言底层是由C++实现的,但它屏蔽了C++中指针的概念,且不支持多继承,因此java语言相较于C++是简单的。
(2) 面向对象
java语言是纯面向对象的。
(3) 可移植性 (跨平台)
java语言可以做到“一次编译,到处运行”,即编译后的java程序可以在windows系统中运行,也可以在linux系统中运行(又称为“跨平台”)。这是因为SUN公司(现已被ORACLE公司收购)开发了java虚拟机JVM(java virtual machine),让java程序在JVM中运行,这样java程序的运行环境不与计算机操作系统直接交互,从而实现了可移植。
(4) 多线程
允许多个线程并发执行
(5) 健壮性
java语言运行产生的“垃圾”是自动回收的(如:使用结束的内存空间)。
2. java的加载和执行
java程序的执行分为2个重要阶段:编译阶段 和 运行阶段。DOS窗口命令:
javac java源文件的路径 //编译
java 类名 //运行 (类名:如A.class的类名就是A)
(1) 编译
程序员编写源代码生成 “.java” 源文件, 该源文件经过编译生成 (可以是多个) “.class” 字节码文件(非二进制文件,无法直接在操作系统中直接执行)。在编译过程中,会检查源文件当中是否有语法错误,如果有错误,源文件将无法生成字节码文件。
注意: 编译生成的.class文件可以拷贝到安装了JVM的任意操作系统中运行,即可移植性(跨平台)。
(2) 执行
- 在DOS窗口输入
java A
的命令,计算机会启动JVM,JVM又会启动类加载器(ClassLoader) - 类加载器会在硬盘上搜索A.class字节码文件,并将它加载到JVM上
- JVM将A.class字节码文件的解释成二进制文件
- 计算机执行二进制文件和底层硬件平台交互