Java从环境到类与对象 · SSH 实操

4 个单元 · 12 节

Java 动手入门:从第一行代码到类与对象

SSH 终端 · JDK 17 · 12 节 4 单元 · 独立原创辅导

12 节 · 合计约 410 分钟 · 81 个步骤

怎么用:左边(或上方“目录”)选一节,电脑分屏时网页放一侧、SSH 窗口放另一侧,把 Java 源码复制到服务器(或用 heredoc 写入文件),再照着命令编译、运行。

全部内容不依赖视频;不需要登录,也不会在网页里执行任何命令。输出只是给你对答案,不要当命令粘贴。

这是教程网页,不是在线运行环境。Java 代码和 SSH 命令都要在你的服务器上执行;网页不会执行代码、不会连接服务器、也不会接收密码。
来源 来源与改编说明(非官方)

主题参考:黑马程序员 Java 入门到起飞(BV17F411T7Ao,2022-04-27)P1–P95;本站是独立原创讲解,非官方站点,不是官方教材,未获授权,不逐字复刻视频或讲义。详见 source/SOURCE.md。

说明:本站是个人学习整理,不是官方教材;不包含原课程的书本、视频或受版权保护的整本内容。原课程与商标归其权利人。

先读:环境准备与 SSH 连接先把服务器、JDK 和目录准备好,再开始第一节。

下面的单元按学习顺序排列:环境 → 语法 → 流程与方法 → 类与对象。前一单元的步骤做完再进入下一单元;每个单元的勾选进度分别记录,互不覆盖。

第一单元 · 终端、变量、输入

从终端到第一行 Java

预计 85 分钟 · 3 节 · 19 个步骤 · 零基础,不要求看过视频

SSH 实操:左边网页看步骤,右边终端跟着敲

本单元进度 0/19

  1. 01在 SSH 里写下第一个 Java 程序从 Linux shell 提示符开始,建 lesson01 工作目录,写 Hello.java,分清提示符/源码/输入/输出,用 javac -encoding UTF-8 编译、java 运行。25 分钟 · 7 步0/7
  2. 02变量、类型与字符串拼接用 int/double/char/boolean/String 保存数据,分清整数除法与小数除法,用 + 拼接字符串,用强制转换和 % 处理取整与余数。30 分钟 · 6 步0/6
  3. 03用 Scanner 读入并计算用 Scanner 读取固定的整数/小数/单词输入,代入算术表达式,用比较运算得到 boolean,分清等待输入与程序卡死。30 分钟 · 6 步0/6
准备 开始本单元之前
  • 一台可 SSH 登录的 Linux 学习服务器;登录信息见 setup.html,不在正文硬编码 IP 或密码
  • 服务器已提供 JDK 17;java -version 与 javac -version 应为 17.x
  • 会用键盘输入命令,不需要安装 IDEA、Maven 或数据库
范围 本单元讲什么、不讲什么

包含

  • SSH shell 提示符与工作目录
  • public class 与文件名一致
  • main 方法入口
  • javac -encoding UTF-8 与 java 类名
  • 变量、基本类型、字符串拼接、类型转换、算术
  • Scanner 输入与比较运算

不包含

  • if / 循环 / 数组 / 自定义方法(本单元不出现)
  • IDEA、Windows CMD、图形客户端
  • 继承、集合、异常、Maven、Spring

lesson03 结束应能独立读入两个数并输出和/差/积/商与比较结果;下一单元才进入 if 和循环。

来源 来源与改编说明(非官方)
  • https://www.bilibili.com/video/BV17F411T7Ao/
  • https://yun.itheima.com/map
  • https://docs.oracle.com/en/java/javase/17/docs/specs/man/javac.html
  • https://docs.oracle.com/en/java/javase/17/docs/specs/man/java.html

主题参考 P001–P026(Java 入门、变量/类型、键盘录入、算术与比较)。本单元讲解、示例、练习均为原创;非官方讲义。

说明:本站是个人学习整理,不是官方教材;不包含原课程的书本、视频或受版权保护的整本内容。原课程与商标归其权利人。

示例在隔离的 Temurin OpenJDK 17.0.20.1(隔离本地作者验收,非远端 SSH 环境) 上逐条执行核验(487/487 项检查通过)。

第二单元 · 分支、循环、数组

让程序会判断和重复

预计 100 分钟 · 3 节 · 20 个步骤 · 零基础,不要求看过视频

SSH 实操:先预测分支/循环走向,再运行对照

本单元进度 0/20

  1. 04if 与 switch:让程序选一条路写 if、if-else、else-if 三种分支,用 switch 对 int 做多路分支,正确使用 break/default,分清区间判断与等值判断。35 分钟 · 7 步0/7
  2. 05for 与 while:重复做一件事写 for 三段式与 while 循环,用 break 提前结束、continue 跳过本次,写浅层嵌套并解释内外层执行次数,避免死循环。35 分钟 · 7 步0/7
  3. 06数组:一排带编号的格子创建 int[],用下标读写,用 length 控制遍历边界,解释越界异常,浅讲数组变量与元素的关系。30 分钟 · 6 步0/6
准备 开始本单元之前
  • 完成第一单元:会编译运行单文件 Java,会用 Scanner 读整数,会用比较运算得到 boolean
  • 知道 public class 与文件名一致
范围 本单元讲什么、不讲什么

包含

  • if / if-else / else-if
  • switch 语句(int)与 break/default
  • for、while、do-while 的认识
  • break / continue / 浅层嵌套
  • 数组创建、初始化、下标、length、遍历、越界

不包含

  • 自定义方法(下一单元才教)
  • switch expression、枚举、模式匹配
  • 二维数组、Arrays 工具类、随机数

lesson06 结束应能用一个 int[] 保存 5 个成绩并遍历输出;lesson07 才把查找/统计拆成练习。

来源 来源与改编说明(非官方)
  • https://www.bilibili.com/video/BV17F411T7Ao/
  • https://yun.itheima.com/map

主题参考 P039–P062(if/switch、for/while、跳转、数组)。本单元讲解、示例、练习均为原创;非官方讲义。

说明:本站是个人学习整理,不是官方教材;不包含原课程的书本、视频或受版权保护的整本内容。原课程与商标归其权利人。

示例在隔离的 OpenJDK 17.0.20.1(作者隔离远端目录 + 独立审查本地复跑) 上逐条执行核验(39/39 项检查通过)。

第三单元 · 数组应用、方法、综合

用数组和方法组织数据

预计 110 分钟 · 3 节 · 20 个步骤 · 零基础,不要求看过视频

SSH 实操:先写方法签名,再填循环和边界

本单元进度 0/20

  1. 07数组练习:查找、统计与最值用一次遍历求最值、求和、计数,写线性查找并约定找不到返回 -1,交换两个下标的值,检查空数组/单元素边界。35 分钟 · 7 步0/7
  2. 08方法:把一段逻辑装起来定义无参/带参/带返回值的方法,区分 void 与 return,用参数传数组、用返回值带出结果,浅讲值传递,按需写重载。35 分钟 · 7 步0/7
  3. 09综合练习:控制台成绩统计把需求拆成输入、统计、输出三个方法,用数组保存固定数量成绩,计算平均分/最高分/及格人数,用固定输入核对输出。40 分钟 · 6 步0/6
准备 开始本单元之前
  • 完成第二单元:会写 if/switch、for/while、break/continue,会创建并遍历 int[]
  • 知道下标从 0 开始、length 是元素个数
范围 本单元讲什么、不讲什么

包含

  • 数组最值、求和、计数、线性查找、交换
  • 方法定义/调用、参数、返回值、void
  • 基本类型与数组引用的值传递浅讲
  • 方法重载(按需)
  • 数组 + 方法 + Scanner 的控制台综合练习

不包含

  • 递归、方法引用、可变参数
  • 二维数组、Arrays 工具类、排序 API
  • 类与对象(下一单元才教)
  • 异常处理、集合

lesson09 结束应能把一个 20 行左右的成绩统计程序拆成 3–4 个方法;下一单元才引入自定义类和对象。

来源 来源与改编说明(非官方)
  • https://www.bilibili.com/video/BV17F411T7Ao/
  • https://yun.itheima.com/map

主题参考 P056–P080(数组练习、方法、综合练习)。本单元讲解、示例、练习均为原创;非官方讲义。

说明:本站是个人学习整理,不是官方教材;不包含原课程的书本、视频或受版权保护的整本内容。原课程与商标归其权利人。

示例在隔离的 OpenJDK 17.0.20.1(作者 SSH 隔离目录 + 独立审查本地 Temurin 复跑) 上逐条执行核验(116/116 项检查通过)。

第四单元 · 类、对象、封装、综合

写出自己的类与对象

预计 115 分钟 · 3 节 · 22 个步骤 · 零基础,不要求看过视频

SSH 实操:两个文件一起编译,先画对象关系再写代码

本单元进度 0/22

  1. 10类与对象:从设计图到真实对象写一个有字段和成员方法的 Student 类,用 new 创建对象,用对象名访问字段/方法,写第二个文件 StudentDemo.java 作为入口并编译两个文件。35 分钟 · 7 步0/7
  2. 11构造方法、this 与封装写无参/带参构造方法,用 this 区分成员变量与参数,用 private 隐藏字段并提供 getter/setter,做一个标准 JavaBean 风格的类。40 分钟 · 8 步0/8
  3. 12综合:数组版学生管理模型用 Student[] + int count 保存多个学生对象,用 switch 菜单串起添加、列表、按学号查找、修改、删除,处理找不到/数组已满/删除前移等边界。40 分钟 · 7 步0/7
准备 开始本单元之前
  • 完成第三单元:会写数组统计、会定义/调用带参数和返回值的方法
  • 知道 public class 与文件名一致,会在同一个类里写 static 辅助方法
范围 本单元讲什么、不讲什么

包含

  • 类与对象、字段、成员方法、new、对象引用
  • 两个文件(Student.java + StudentDemo.java)的编译与运行
  • 构造方法、构造方法重载、this
  • private、getter/setter、标准 JavaBean、封装
  • Student[] + count 的增/查/改/删菜单综合

不包含

  • 继承、多态、接口、抽象类
  • static 变量/静态代码块/工具类专题(只允许 main 同类辅助方法上的 static)
  • ArrayList / 集合 / 泛型
  • 异常处理、包/import 专题、Maven、Spring

lesson12 是本阶段终点:能写两个文件的类、用构造方法创建对象、用 private + getter/setter 封装、用对象数组管理多个学生。继承/多态/集合不在本阶段。

来源 来源与改编说明(非官方)
  • https://www.bilibili.com/video/BV17F411T7Ao/
  • https://yun.itheima.com/map

主题参考 P081–P095(面向对象、封装、构造方法、对象数组综合)。本单元讲解、示例、练习均为原创;非官方讲义。

说明:本站是个人学习整理,不是官方教材;不包含原课程的书本、视频或受版权保护的整本内容。原课程与商标归其权利人。

示例在隔离的 OpenJDK 17.0.20.1 remote (Ubuntu 17.0.20.1+1-1-26.04-Ubuntu),独立审查本地 Temurin 17.0.20.1 复跑 上逐条执行核验(22/22 项检查通过)。