初始Java

发布时间 2023-12-02 12:55:34作者: Cyptals

初始Java

1.编程语言发展史

  1. 机器语言

  2. 汇编语言

  3. 高级语言

2.Java发展史

3.Java体系结构

  • JavaSE

  • JavaEE

  • JavaME

4.Java的特性和优势

  • 跨平台/可移植性

  • 安全性

  • 面向对象

  • 简单性

  • 高性能

  • 分布式

  • 多线程

  • 健壮性

5.Java核心机制_垃圾收集机制

1.不再使用的内存空间应回收

2.Java消除了程序员回收无用内存空间的职责

3.垃圾收集在Java程序运行过程中自动进行

4.GC的自动回收,提高了内存空间的利用效率

6.Java核心机制2_JVM以及跨平台原理

C语言的跨平台限制:

  • 编译执行方式:C语言采用编译执行方式,生成的可执行文件与平台相关,受限于编译器和平台的关系。

Java的跨平台原理:

  • JVM(Java Virtual Machine):作为虚拟计算机,执行Java字节码,定义了指令集、寄存器集、结构栈、垃圾收集堆等。

  • 中间码机制:Java通过编译生成中间码(字节码),与平台无关,实现了“一次编译,随处运行”的目标。

  • JVM的关键作用:Java虚拟机屏蔽了底层运行平台的差异,不同操作系统有不同的Java虚拟机,但这种机制确保了源程序的跨平台性。

差异对比:

  • C语言:编译执行,生成的可执行文件与平台相关。

  • Java:解释执行,通过中间码实现平台无关,JVM在不同平台上解释执行。

总结: Java的跨平台特性建立在JVM的基础上,中间码的机制使得源程序具有跨平台的能力,与C语言的编译执行方式有明显的差异。

 

6.常用DOS命令

  • 切换盘符:使用命令 c:d:e: 可以切换不同的盘符,大小写无区分。

  • 显示详细信息:通过命令 dir 可以展示当前目录下的详细文件信息。

  • 改变当前目录:使用 cd 命令可以改变当前的工作目录。

  • 特殊目录表示

    • .:代表当前目录。

    • ..:代表上一层目录。

  • 清屏:输入 cls 命令可清除屏幕上的内容。

  • 切换历史命令:使用上下箭头键可以切换输入的历史命令。

  • 补全命令:按下 tab 键可以自动补全命令,提高输入效率。

  • 创建目录:使用 md 命令可以创建新的目录。

  • 删除目录:通过 rd 命令可以删除目录。

  • 复制文件命令:使用 copy 命令可以复制文件。

  • 删除文件:使用 del 命令可以删除文件。如果del后接的是文件夹/目录,则删除的是该文件夹下的文件,而不是文件夹本身。

7.Java 运行机制_JDK/JRE/JVM

  • JVM (Java Virtual Machine):

    • 用于执行 bytecode 字节码的“虚拟计算机”。

    • 不同操作系统有不同版本的JVM,屏蔽了底层运行平台的差异,是实现跨平台的核心。

  • JRE (Java Runtime Environment):

    • 包含Java虚拟机(JVM)、库函数等运行Java程序所需的环境。

    • 提供Java应用程序运行的标准环境。

  • JDK (Java Development Kit):

    • 包含JRE,同时提供了编译器、调试器等用于Java应用程序的开发工具。

    • 面向Java开发人员,支持Java程序的开发和调试。

8.配置Java环境变量

环境变量配置

  1. 目的:

    • 使任意目录下都能识别Java的命令。

  2. 打开路径:

    • 计算机/此电脑 >>> 右键 >>> 属性 >>> 高级系统设置 >>> 环境变量。

  3. 系统变量/用户变量:

    a. 新建 JAVA_HOME:

    • 约定俗成的Java开发工具安装路径。

    • 便于修改。

    b. 添加 path:

    • 任意目录下都能识别Java的命令。

    • %路径%:动态获取指定名称的路径。

    c. 新建 classpath:

    • .;%JAVA_HOME%\lib 表示当前目录和JVM字节码文件位置。

    • JVM必须找到字节码文件运行代码。

  4. 注意:

    • DOS窗口修改path后需重新启动。

 

9.Java基础

1. Java中main函数每个单词的作用:

  • public: 访问修饰符,表示main方法可以被其他类访问。

  • static: 表示main方法是静态方法,属于类而不是对象。

  • void: 方法返回类型,main方法没有返回值,用void表示。

  • main: 方法的名称,Java虚拟机寻找的程序入口点。

  • String[] args: main方法的参数列表,接受一个字符串数组作为输入参数,通常用于传递命令行参数。

2.Java里的基本数据类型

  1. 整数类型:

    • byte: 8位,-128 到 127

    • short: 16位,-32768 到 32767

    • int: 32位,约 -2^31 到 2^31-1

    • long: 64位,约 -2^63 到 2^63-1

  2. 浮点数类型:

    • float: 32位单精度

    • double: 64位双精度

  3. 字符类型:

    • char: 16位Unicode字符

  4. 布尔类型:

    • boolean: truefalse

    •