☕ 第二章 Java编程基础

2.1 Java基本语法

📄 一句话概括

这一节立四条"书写规矩":代码的基本格式(类框架 + 分号 + 花括号)、三种注释(给人看的备注)、标识符命名规则(起名的硬规矩和软惯例)、常量的六种写法。全是零理解成本的"规定",看完就能用。

📝 本节是"规定课"不是"理解课"

和第一章不同,这节内容没多少"为什么",主要是"规定如此"。好消息:规定类的知识用 IDEA 就能现学现验——写错了它立刻红线提示。推荐边读边在 IDEA 里敲。


1. Java 代码的基本格式

第一章的 HelloWorld 换个壳,就是所有 Java 代码的通用骨架:

修饰符 class 类名 {
    代码
}

规矩一共五条,全是硬性的:

  1. Java 代码必须住在类里——没有 class 框架,一行代码都写不了(1.3 讲过:类是"大房子")
  2. 每条语句以英文分号 ; 结尾——忘了分号是新手第一大报错来源
  3. 花括号 {} 必须成对——IDEA 会自动帮你补右括号,别手快多删
  4. 严格区分大小写——Demo 和 demo 是两个东西
  5. 缩进和换行是给人看的,编译器不在乎;但按 IDEA 自动缩进写,代码才读得下去
📝 一个源文件能写几个类?

能写多个,但 public 的类最多一个,而且文件名必须等于这个 public 类的名字(1.3 的铁规则)。初学阶段一文件一个类最省心。


2. 三种注释(写给人看的备注)

注释是给人看的,编译器直接无视——编译出的 .class 里根本没注释。三种:

写法 名字 范围 用途
// 备注内容 单行注释 只管本行(// 之后) 日常随手备注,最常用
/* 备注内容 */ 多行注释 两个星号之间,可跨行 长段说明
/** 备注内容 */ 文档注释 可跨行 配 javadoc 工具自动生成官方说明书(工具类代码才用)
// 这是单行注释:下面这行打印一句话
System.out.println("大家好,我在学 Java");

/*
   这是多行注释:
   可以写很多行
*/

/**
 * 这是文档注释:写在类和方法上方
 * 将来能自动生成说明书
 */
⚠️ 多行注释不能嵌套!

/* /* */ */ 这种"套娃"会报错——编译器遇到第一个 */ 就认为注释结束了,剩下的 */ 变成非法字符。单行注释 // 则随便套。


3. 关键字:被 Java 霸占的词

关键字(keyword)= Java 语言自己占用的单词,有特殊含义,你不能拿来当名字起。特点:

按用途认脸熟即可:

分组 成员
定义类/方法 class、public、private、static、void、final
八种基本类型 int、long、double、boolean、char……(2.2 全讲)
流程控制 if、else、for、while、switch、break、continue(第三章)
其他 new、return、this、null、true、false
📝 `goto` 和 `const` 是关键字吗?

是——但属于"保留字":Java 自己暂时不用,也不许你用,纯粹占着位子。所以你给变量起名 goto 照样报错。


4. 标识符:起名的硬规矩和软惯例

标识符 = 你给类、变量、方法起的那些名字(HelloWorld、age、main 都是)。硬规矩四条,违反必报错:

  1. 只能由字母、数字、下划线 _、美元符 $ 组成
  2. 不能以数字开头(2name ✗,name2 ✓)
  3. 不能用关键字(class ✗,myClass ✓)
  4. 严格区分大小写
🧪 判断练习:下面哪些是合法标识符?
2name   ✗ 数字开头
name2   ✓
class   ✗ 关键字
Class   ✓(大写 C,不是关键字)
_name   ✓(下划线开头合法)
$money  ✓($ 开头合法,但一般留给工具用)
hello world  ✗ 有空格
学生    ✓(技术上合法,Java 支持,但行业惯例不用)

软惯例三条款(不守不报错,但会被老程序员皱眉):

对象 惯例 例子
类名 大驼峰:每个单词首字母大写 HelloWorld、StudentManager
变量名、方法名 小驼峰:第一个单词小写,后面首字母大写 age、studentName、getScore
常量名(final 的,2.2 遇到) 全大写 + 下划线分隔 MAX_SCORE、PI
💡 见名知义是最高规矩

int a = 18; 合法但烂——一周后你自己都不知道 a 是什么。int age = 18; 一眼懂。名字是写给人看的,这条和注释同理。


5. 常量:程序里写死的那些值

常量 = 固定不变的量,比如 18、3.14、"你好"。Java 常量六种,先认脸(类型细节 2.2 展开):

种类 例子 要点
整数常量 100、-5、0 最常见
小数常量 3.14、-0.5 带小数点就算
字符常量 'A'、'中' 单引号,引号里有且只有一个字符
字符串常量 "Hello"、"A"、"" 双引号,0~多个字符都行("" 是空字符串,合法)
布尔常量 true、false 只有两个值,全小写
空常量 null 表示"什么都没有"(第五章对象时再讲)
⚠️ 新手第一坑:`'A'` 和 `"A"` 不是一回事!

单引号是字符(一个字符),双引号是字符串(文本,哪怕只有一个字)。写 println('AB') 直接报错(字符里塞了俩),写 println("AB") 才对。这一对引号 2.2 还会坑你一次,先混个脸熟。


6. 动手:把规矩跑一遍(保姆式)

  1. 打开 IDEA → File → New → Project,左侧选 Java,Location 填 I:\JavaCode\IDEA02,JDK 还是那个 17 → Create
  2. 左侧 src 右键 → New → Java Class → 名字输 Demo01 → 回车
  3. 在 main 方法里抄这段(体会三种注释和六种常量): java public class Demo01 { public static void main(String[] args) { // 整型常量 System.out.println(100); // 小数常量 System.out.println(3.14); // 字符常量:单引号,只能装一个 System.out.println('A'); // 字符串常量:双引号,装几个都行 System.out.println("大家好,我在学 Java"); // 布尔常量 System.out.println(true); } }
  4. 点 main 左边的绿色三角 ▶ → Run 面板应依次输出:100、3.14、A、大家好,我在学 Java、true
  5. 实验一下(30 秒):把 'A' 改成 'AB' → 看 IDEA 的红线报错 → 改回。亲眼见过一次,比读十遍都牢。

7. 常见误区

⚠️ 误区 1:注释越多越好?

注释写"为什么",不写"是什么"——// 把 age 加 1 配 age++; 是废话注释。好的注释解释为什么这么做,代码本身已经说明了是什么。

⚠️ 误区 2:关键字要提前背下来?

不用。写多了自然熟,而且 IDEA 会用颜色帮你把关——不小心拿关键字起名,它变不了色/直接报错,当场发现。

⚠️ 误区 3:`$` 也是合法字符,那名字里多用好?

$ 技术上合法,但它是编译器和工具的惯用字符(内部生成的名字),你的代码里别用。起名用字母和下划线就够。

⚠️ 误区 4:多行注释里再写一个多行注释更清楚?

不行,多行注释不能嵌套(第一个 */ 就终止了)。大段代码临时不用想"注释掉"?用 IDEA 快捷键 Ctrl + / 给选中行批量加 //,再按一次取消——这才是正规操作。

⚠️ 误区 5:常量和变量(2.2 才讲)是不是一回事?

不是。常量是写死在代码里的固定值(18、"你好");变量是给内存格子贴的标签,值可以换(下一节的主角)。这节的"常量"只为下一节当对照组。


8. 本节自测

❓ Q1:三种注释分别怎么写?哪种能被 javadoc 工具生成说明书?

// 单行、/* */ 多行、/** */ 文档注释(能生成说明书)。注意编译出的 .class 里三种都没有——注释只给人看。

❓ Q2:`/* /* 两层 */ */` 会怎样?

报错。多行注释不能嵌套——编译器遇到第一个 */ 就认为结束,剩下的 */ 成了非法字符。批量注释用 IDEA 的 Ctrl + /。

❓ Q3:判断合法性:`2name`、`name2`、`class`、`Class`、`_name`、`hello world`

✗ 2name(数字开头);✓ name2;✗ class(关键字);✓ Class(大小写敏感,不是关键字);✓ _name;✗ hello world(有空格)。

❓ Q4:`'A'`、`"A"`、`""`、`'AB'` 各是什么?哪个会报错?

'A' 是字符常量(单引号一个字符);"A" 和 "" 是字符串常量(双引号,可空可多字符);'AB' 报错——字符里塞了两个字符。单双引号是新手第一坑。

❓ Q5:为什么说关键字"不用背"?

① IDEA 里关键字自动变色,起名撞车当场报错;② 语法每章都在用,高频的自然记熟;③ 真正需要的是"认脸熟"——见到知道它是关键字即可。


9. 下一步学什么


10. 相关笔记

Java基础 #Java编程基础 #语法 #注释 #标识符 #常量 #第二章