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