第四章 物质的基本结构——类与对象
4.1 分子与原子的关系(类与实例)
物理类比:
- 类 = 分子结构式(定义物质特性)
- 对象 = 实际存在的分子(具体实例)
实验代码:
// 定义"电路元件"类(分子结构式)
class CircuitComponent {
// 属性:电压、电阻(相当于原子)
double voltage;
int resistance;
// 方法:计算电流(分子功能)
double calculateCurrent() {
return voltage / resistance;
}
}
// 创建真实元件(对象实例化)
CircuitComponent led = new CircuitComponent();
led.voltage = 3.0;
led.resistance = 150;
System.out.println("LED电流:" + led.calculateCurrent() + "A");
4.2 力的三要素(方法参数与返回值)
物理要素对照表:
力的特性 | 方法对应 |
大小 | 参数值 |
方向 | 参数类型 |
作用点 | 方法调用位置 |
实验演示:
class ForceCalculator {
// 计算浮力的方法(参数:液体密度、体积)
double buoyancy(double density, double volume) {
return density * 9.8 * volume; // 返回浮力值
}
}
ForceCalculator archimedes = new ForceCalculator();
System.out.println("浮力:" + archimedes.buoyancy(1000, 0.5) + "N");
4.3 惯性定律(对象的状态保持)
牛顿第一定律编程版:
"对象在未被外部方法作用时,将保持原有状态不变"
状态保持实验:
class MovingCar {
double speed = 0;
void accelerate(double force) {
speed += force * 0.1; // 力改变速度
}
}
MovingCar tesla = new MovingCar();
tesla.accelerate(200);
System.out.println("当前车速:" + tesla.speed + "km/h"); // 输出20.0
tesla.accelerate(0); // 不施加外力
System.out.println("惯性行驶:" + tesla.speed + "km/h"); // 保持20.0
第五章 能量守恒系统——面向对象特性
5.1 安全实验规范(封装思想)
封装三原则:
- 危险化学品要密封保存(私有化属性 private)
- 通过专用工具操作(公有方法 public)
- 设置安全防护层(访问控制 getter/setter)
安全电压调节器:
class VoltageRegulator {
private int maxVoltage = 220; // 密封属性
// 安全调节方法
public void setVoltage(int newVoltage) {
if (newVoltage > 240) {
System.out.println("超过安全阈值!");
} else {
maxVoltage = newVoltage;
}
}
public int getVoltage() {
return maxVoltage;
}
}
5.2 生物分类法(继承体系)
生物学类比继承:
classDiagram
class 电子元件
电子元件 <|-- 电阻
电子元件 <|-- 电容
电子元件 <|-- 电感
电路家族代码:
class ElectronicComponent {
String name;
void displayType() {
System.out.println("基础元件");
}
}
class Resistor extends ElectronicComponent {
@Override
void displayType() {
System.out.println("阻碍电流");
}
}
class Capacitor extends ElectronicComponent {
@Override
void displayType() {
System.out.println("储存电荷");
}
}
5.3 水的三态变化(多态实现)
物态变化与多态:
// 父类:水
class Water {
void state() {
System.out.println("液态");
}
}
// 子类:冰
class Ice extends Water {
@Override
void state() {
System.out.println("固态");
}
}
// 子类:水蒸气
class Steam extends Water {
@Override
void state() {
System.out.println("气态");
}
}
// 实验演示
Water[] states = {new Water(), new Ice(), new Steam()};
for (Water w : states) {
w.state(); // 同一方法不同表现
}
第六章 物理实验方法论——接口与异常
6.1 标准电源插头(接口抽象性)
接口的物理意义:
定义实验设备的通用连接标准,不关心内部实现
USB接口模拟:
interface USBPower {
void transferData(); // 必须实现的方法
default void charge() { // 默认方法(Java8+特性)
System.out.println("5V充电中...");
}
}
class Mouse implements USBPower {
@Override
public void transferData() {
System.out.println("传输坐标数据");
}
}
6.2 保险丝保护机制(异常处理)
电路安全系统:
class Circuit {
void powerOn(int voltage) throws OverloadException {
if (voltage > 250) {
throw new OverloadException("电压过高!");
}
System.out.println("电路正常启动");
}
}
// 自定义保险丝异常
class OverloadException extends Exception {
public OverloadException(String message) {
super(message);
}
}
// 实验操作
try {
new Circuit().powerOn(300);
} catch (OverloadException e) {
System.out.println("触发保护:" + e.getMessage());
}
6.3 误差分析报告(日志记录)
实验记录规范:
import java.util.logging.Logger;
class ExperimentLogger {
private static final Logger LOG = Logger.getLogger("Lab");
void runExperiment() {
LOG.info("实验开始");
try {
// 模拟危险操作
int result = 10 / 0;
} catch (Exception e) {
LOG.severe("实验出错:" + e.toString());
}
LOG.info("实验结束");
}
}
中篇实验室任务:
- 设计一个"智能温控系统"类,当温度超过阈值时触发熔断机制(封装+异常)
- 创建电路元件继承体系:电阻、电容、电感均继承基础元件类,实现各自特性
- 模拟三相态变化系统:通过多态实现水在不同温度下的状态切换
// 任务3示例代码框架
class TemperatureSystem {
public static void main(String[] args) {
Water substance = new Water();
substance.state(); // 默认液态
substance = new Ice();
substance.state(); // 固态
substance = new Steam();
substance.state(); // 气态
}
}
下篇预告:下篇将进入"电磁综合篇",用磁感线理解集合存储,用变压器原理掌握数据流转换,最终完成能自动生成实验报告的完整系统!