Java 模拟货船装载集装箱:异常处理与面向对象编程实践
Java 模拟货船装载集装箱:异常处理与面向对象编程实践
本示例使用 Java 语言模拟货船装载集装箱,通过定义 CargoBoat 类、DangerException 类和 Main 类,实现货船装载、重量限制和异常处理功能,并展示了面向对象编程的基本概念和应用。
1. 货船类 CargoBoat
public class CargoBoat {
private int realContent;
private int maxContent;
public void setMaxContent(int c) {
maxContent = c;
}
public void loading(int m) throws DangerException {
realContent += m;
if (realContent > maxContent) {
throw new DangerException();
}
System.out.println('CargoBoat loading ' + m + ', realContent: ' + realContent);
}
}
- 属性:
realContent(int):实际重量maxContent(int):最大重量
- 方法:
setMaxContent(int c):设置最大重量loading(int m):装载货物,如果实际重量超过最大重量,则抛出 DangerException 异常。
2. 异常类 DangerException
public class DangerException extends Exception {
private String message = 'overweight';
public String warnMess() {
return message;
}
}
- 属性:
message(String):异常信息,固定为 'overweight'。
- 方法:
warnMess():返回异常信息。
3. 主类 Main
public class Main {
public static void main(String[] args) {
CargoBoat boat = new CargoBoat();
boat.setMaxContent(1000);
try {
boat.loading(600);
boat.loading(400);
boat.loading(367);
boat.loading(555);
} catch (DangerException e) {
System.out.println('DangerException: ' + e.warnMess());
} finally {
System.out.println('The Ship will sail on time');
}
}
}
main方法:- 创建 CargoBoat 对象并设置最大重量为 1000。
- 使用
try-catch-finally代码块进行异常处理,模拟装载货物,如果发生异常,则输出异常信息,最后始终输出 'The Ship will sail on time'。
总结
本示例演示了如何使用 Java 语言进行面向对象编程,包括定义类、属性、方法,以及如何处理异常。通过模拟货船装载集装箱,我们可以更加直观地理解面向对象编程的概念和应用。
原文地址: https://www.cveoy.top/t/topic/nV9k 著作权归作者所有。请勿转载和采集!