# 常见的 CMD 命令

# 盘符名称+冒号

作用:盘符切换。举例:E: 回车,表示切换到 E 盘

# dir

作用:查看当前路径下的内容

# cd 目录

作用:进入单击目录。举例:cd java

# cd..

作用:回退到上一级目录

# cd 目录 1\目录 2

作用:进入多级目录

# cd \

作用:回退到根目录

# cls

作用:清屏

# exit

作用:退出命令

# Java 是什么

Java 是一门计算机编程语言

# 下载和安装

安装完 Java JDK 后,打开终端,输入java -version就可以看到当前安装的 JDK 版本了。

# Hello world 的书写

新建 helloworld.java 文件,将以下代码复制到这个文件:

public class helloworld {
  public static void main(String[] args) {
    System.out.println("hello world");
  }
}

在命令行中打开这个文件,执行

javac helloworld.java

执行完成后,会在 helloworld.java 同级目录下多出一个 helloworld.class 文件

java helloworld

可以看到终端打印出了 'hello world' 字符串。

# 常见的 bug

初学者写代码的时候,常见的 bug 如下:

  • 中文符号问题
  • 单词拼写错误

# JDK 环境变量的配置方式

在运行弹窗输入 services.msc,回车会打开服务窗口。可以关闭 win10 自动更新。

# win10 的小 bug

部分 win10 电脑有个小 bug,当你重启电脑后,配置的环境变量会失效。

# Java 语言的发展

Java5 是 Java 的第一个大版本更新。
Java8 企业中最常用的版本呢,最为稳定。
Java17 目前最后一个长期支持版本(LTS,正式版)也是课程中学习的版本。
细节:

  1. 如果我用 Java17 编写的代码,用 Java8 能否运行?

答: 不一定,因为 Java 的不同的版本在更新的时候,只是在原有的基础上加一些东西,向下兼容。如果代码中包含了 8 以上的特性,那么 8 就无法运行,但是如果不包含,可以运行。

  1. 如果我用 Java8 编写的代码,用 Java17 能否运行?

答: 可以。

# Java 的分类

Java 的三大分类:

  • Java SE

Java 语言的标准版,用于桌面应用的开发,是其他两个版本的基础。
学习 Java SE 为今后要从事的 Java EE 开发打基础。

  • Java ME

Java 语言的小型版本,用于嵌入式电子设备或者小型移动设备。如诺基亚的塞班系统。

  • Java EE

Java 语言的企业版,用于 web 方向的网站开发。在这个领域,是当之无愧的 No.1。

# Java 的主要特点

用户量、适用面、与时俱进、自身特点
Java 的特点:面向对象、安全性、多线程、简单易用、开源、跨平台

# 跨平台的原理

Java 代码并不是直接运行在操作系统里面的,而是运行在虚拟机里面的。针对不同版本的操作系统,Java 提供了不同版本的虚拟机。

# JRE 和 JDK

JDK 包含 JRE;JRE 包含 JVM 和核心类库。

# 注释

注释内容不会参与编译和运行,仅仅是对代码的解释说明。
不管是单行注释还是多行注释,在书写的时候都不要嵌套。

# 关键字

关键字:被 Java 赋予了特定含义的英文单词。
关键字的字母全部小写。
常用的代码编辑器,针对关键字有特殊的颜色标记,非常直观。
class 关键字表示定义一个类,后面跟随类名。

# 字面量

字面量:不同的数据在程序中的书写格式。

字面量类型 说明 举例
整数类型 不带小数点的数字 1
浮点数类型 带小数点的数字 1.1
字符串类型 用双引号括起来的内容 "a"
字符类型 用单引号括起来的,内容只能有一个 'a'
布尔类型 表示真假 true、false
空类型 一个特殊的值,空值 null

# 练习-输出 6 种字面量

在课程中,直接向下面这样打印 null, 会报错

System.out.println(null);

这个老师说的是  null 不能直接使用,否则代码会报错,这个需要后续验证。

# 制表符

\t 表示大小可变的,会根据前面的数据去补空格,最少补 1 个,最多补 8 个。会对前面的内容进行不齐。让补完之后结果的长度是 8 或者 8 的倍数。

// 下面输出结果中补了 7 个空格,加上前面的字符串 "a" ,刚好是八个
System.out.println("a" + "\t" + "123"); // "a       123"

# 变量的基本使用

变量:在程序的执行过程中,其值有可能发生改变的量。

当某个数据发生改变时,我们可以用变量存储。当数据变化时,只要修改变量里面记录的值即可。

变量的定义格式:数据类型 变量名 = 数据值;

# 变量的注意点

  • 一个变量只能存一个值
  • 变量名不允许重复定义
  • 一条语句可以定义多个变量
  • 变量在使用之前必须赋值
  • 变量的作用域范围