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 语言进行面向对象编程,包括定义类、属性、方法,以及如何处理异常。通过模拟货船装载集装箱,我们可以更加直观地理解面向对象编程的概念和应用。

Java 模拟货船装载集装箱:异常处理与面向对象编程实践

原文地址: https://www.cveoy.top/t/topic/nV9k 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录