1. 什么是"程序"?计算机是怎么工作的?

计算机本质上是一个只会执行指令的机器。它只认识两种状态:通电(1)和断电(0)。

🍳 生活类比——做菜:菜谱就是"程序",你(CPU)照着菜谱一步一步执行:
第 1 步:洗菜 → 第 2 步:切菜 → 第 3 步:开火 → 第 4 步:下锅……
程序 = 菜谱(指令的集合);执行程序 = 照菜谱做菜;改程序 = 改菜谱。

所以:

🎯 记住这三句话

  • 程序 = 指令集合;写程序 = 写指令给计算机干
  • 内存是工作台(快、临时),硬盘是仓库(慢、永久)
  • 计算机底层只认 0 和 1,所有高级语言最终都要变成 0 和 1

2. 什么是二进制?为什么要学它?

我们平时用十进制:0~9,逢十进一。计算机用二进制:只有 0 和 1,逢二进一。

十进制 vs 二进制对照
十进制:  0   1   2   3   4   5   6   7   8   9   10
二进制:  0   1  10  11 100 101 110 111 1000 1001 1010

规律:十进制 10 = 1×10¹ + 0×10⁰
     二进制 1010 = 1×2³ + 0×2² + 1×2¹ + 0×2⁰ = 8 + 0 + 2 + 0 = 10 ✓

为什么用二进制:电路只有"通/断"两种状态最可靠、最省电、最便宜。这就是计算机的世界。

基础单位:

🎯 需要掌握到什么程度?

  • 会看:给一个二进制能算出十进制(面试偶尔考)
  • 理解:为什么 int 范围是 -2147483648 ~ 2147483647(32 位,一半负数一半正数)
  • 不用怕:日常工作 99% 用不到手算二进制,理解概念即可

3. 什么是编程语言?Java 属于哪种?

人和计算机沟通需要"翻译",编程语言就是人写的指令规范。按"离机器远近"分三层:

层级 举例 特点
机器语言01001011…CPU 直接执行,人没法写
低级语言汇编(MOV AX, 1)接近机器,难写难读
高级语言Java / Python / C / Go像英语,人能读懂,需要"翻译"成机器码

翻译方式分两种:

📖 Java 的特殊之处:Java 编译后生成的不是机器码,而是字节码(.class 文件),再由 JVM(Java 虚拟机)解释执行。就像写了一份"世界通用菜谱",每个国家的厨师(JVM)都能照着做——这就是 Java"一次编写,到处运行"的原因。下一篇详细讲。

🎯 记住

  • Java 是高级语言,先编译成字节码,再由 JVM 解释执行 + JIT 即时编译热点代码(所以既不是纯编译型也不是纯解释型)
  • 编程语言只是工具,重点学"编程思维"(怎么把问题拆成步骤)

4. 新手必懂术语表(收藏)

术语 大白话解释
代码(Code)你写的程序文本,就是指令的"草稿"
编译(Compile)把人类代码翻译成计算机能懂的格式
语法(Syntax)编程语言的"语法规则",写错就编译不过(类似中文语病)
Bug程序里的错误/漏洞,导致结果不对或崩溃
调试(Debug)找 Bug 和修 Bug 的过程
IDE(集成开发环境)写代码的"Word",自带高亮/提示/运行(如 IntelliJ IDEA、Eclipse)
终端(Terminal)黑窗口,敲命令的地方(Windows 叫 CMD/PowerShell)
变量(Variable)存数据的"盒子",贴了名字标签
函数/方法(Method)一段有名字的代码块,可以反复调用(像"调料包")
类(Class)Java 的组织单位,代码都要放在类里(后面详细讲)
框架(Framework)别人写好的半成品"模版工程",你填业务进去(如 Spring)
数据库(Database)专门存数据、能快速查的"超级表格"(如 MySQL)
服务器(Server)24 小时开机运行你程序的电脑(网站就跑在上面)

✍️ 小练习(答对即可进入下一课)

  • 1. 内存和硬盘的区别是什么?
  • 2. 二进制 1101 等于十进制几?(提示:8+4+0+1)
  • 3. Java 编译后生成的文件叫什么?谁负责执行它?
  • 4. "程序"用一句话怎么定义?
⚠️ 本页面由 AI 生成,内容仅供参考,请以官方文档和实际源码为准。