第一章 搭建实验室——初识Java世界
1.1 电路实验箱的组装(JDK安装与环境配置)
物理现象:就像组装电路实验箱需要电池、导线、灯泡等工具,Java程序运行需要JDK(Java Development Kit)。
动手实验:
- 下载JDK工具箱:访问Oracle官网下载对应操作系统的JDK(建议选择LTS版本如JDK17)
- 安装"电源模块":双击安装包,记住安装路径(类比记住电池正负极方向)
- 连接"实验导线":配置环境变量(Path中添加JDK的bin目录路径)
知识延伸:
环境变量就像实验箱的导线布局,告诉系统在哪里找到Java编译器(javac)和运行器(java)
1.2 电流方向与电子移动方向(编译执行原理)
物理类比:
- 电子真实移动方向 ? .java源代码(人类可读)
- 约定电流方向 ? .class字节码(计算机可读)
实验观察:
// 点亮第一个"小灯泡"(HelloWorld程序)
public class CircuitLab {
public static void main(String[] args) {
System.out.println("电流已导通!"); // 类似示波器显示波形
}
}
编译运行:
javac CircuitLab.java # 将源代码转化为字节码(正极→负极)
java CircuitLab # 执行字节码(电子真实移动方向)
1.3 示波器观测信号(控制台输出)
核心方法:System.out.println()
物理实验:
// 模拟示波器三通道信号
System.out.println("-----实验开始-----");
System.out.print("电压波形:"); // print不换行
System.out.println(" 5V"); // println换行
System.out.printf("电流值:%.1fA\n", 2.5); // 格式化输出(类似示波器数值显示)
实验思考:
若将println误写为print,会发生什么?类比示波器探头接触不良时的显示异常
第二章 物理量的存储——变量与数据类型
2.1 烧杯与量筒(变量的容器特性)
实验器材对比:
物理容器 | Java变量 | 特点 |
50ml烧杯 | int cup = 50; | 整型,存放整数 |
100ml量筒 | double cylinder = 99.9; | 浮点型,存放小数 |
危险操作警示:
int beaker = 3.14; // 错误!就像把液体倒入形状不匹配的容器
double correct = (double)3; // 正确!使用类型转换如同使用漏斗
2.2 质量vs.重量(基本数据类型区别)
概念辨析表:
物理量 | 数据类型 | 内存占用 | 取值范围 |
质量 | int | 4字节 | -2147483648~2147483647 |
重量 | double | 8字节 | ±4.9e-324~±1.7e308 |
实验现象:
int mass = 2147483647;
mass = mass + 1; // 溢出!如同超过天平最大量程
System.out.println(mass); // 输出-2147483648(类似指针反向偏转)
2.3 能量转换中的损失(类型转换精度问题)
动能→热能实验:
double kineticEnergy = 15.999;
int heat = (int)kineticEnergy; // 强制转换如同能量损耗
System.out.println(heat); // 输出15(丢失0.999)
2.4 弹簧测力计的量程(数据范围限制)
安全操作指南:
short springScale = 32767; // short最大值
// springScale += 1; 超过量程会断裂(编译错误)
long safeScale = 2147483648L; // 使用大容量容器必须加L标识
第三章 运动控制——运算符与控制结构
3.1 杠杆原理(运算符优先级)
支点位置公式:
int result = 5 + 3 * 2; // 先算乘法(支点靠近乘除)
// 等效于 5 + (3*2) = 11
平衡实验:
boolean isBalanced = (10 % 3) == 1; // %取余运算符
System.out.println(isBalanced); // 输出true(杠杆平衡)
3.2 电路分支实验(if-else条件判断)
并联电路模拟:
int voltage = 220;
if (voltage > 250) {
System.out.println("保险丝熔断!");
} else if (voltage < 180) {
System.out.println("灯泡闪烁...");
} else {
System.out.println("照明正常 ?");
}
3.3 天体运动周期(循环结构)
地月系统模拟:
for (int day=1; day<=30; day++) { // 月球公转周期
System.out.println("第" + day + "天:月相变化");
if (day % 7 == 0) {
System.out.println("【出现" + (day/7) + "周潮汐】");
}
}
3.4 斜坡小车实验(嵌套循环)
加速度研究:
for (int slope=15; slope<=45; slope+=15) { // 坡度变化
System.out.println("当前坡度:" + slope + "度");
for (int sec=1; sec<=3; sec++) { // 时间推移
double speed = 0.5 * slope * sec;
System.out.printf("第%d秒速度:%.1fm/s\n", sec, speed);
}
}
上篇实验室任务:
- 制作一个"自由落体计算器",输入时间t,输出下落距离(s=?gt2)
- 设计电路保险装置,当电压连续3次检测超过240V时触发警报
- 用星号(*)打印不同角度的斜坡图形(嵌套循环应用)
// 示例:30度斜坡绘制
for (int i=1; i<=5; i++) {
for (int j=1; j<=i; j++) {
System.out.print("*");
}
System.out.println();
}
/* 输出:
*
**
***
****
*****
*/
下篇预告:中篇将带您进入"力学系统",用惯性定律理解对象状态保持,用生物分类法掌握继承体系,就像组装属于自己的机器人军团!