酷代码 AI
菜单
服务商
DeepSeek字节豆包讯飞星火
更多选项

Java 简单工厂模式模拟:按不同理由解释迟到原因

以下是一个使用 Java 实现的简单工厂模式来处理不同迟到理由的示例代码: ```java public class LateReasonFactory { public static LateReason createLateReason(String reason) { if (reason.equalsIgnoreCase("去厕所")) { return new ToiletReason(); } else if (reason.equalsIgnoreCase("在路上")) { return new OnTheRoadReason(); } else if (reason.equalsIgnoreCase("回家")) { return new HomeReason(); } else { throw new IllegalArgumentException("无效的迟到理由"); } } public static void main(String[] args) { LateReason reason = LateReasonFactory.createLateReason("去厕所"); // 在这里对获取到的迟到理由对象进行相应的操作 } interface LateReason { void explain(); } static class ToiletReason implements LateReason { @Override public void explain() { System.out.println("因为去厕所迟到了"); } } static class OnTheRoadReason implements LateReason { @Override public void explain() { System.out.println("因为在路上迟到了"); } } static class HomeReason implements LateReason { @Override public void explain() { System.out.println("因为回家迟到了"); } } } ``` 在上述代码中,定义了一个`LateReasonFactory`类,其中的`createLateReason`方法根据传入的不同理由字符串创建相应的具体`LateReason`对象。`LateReason`是一个接口,不同的具体理由类实现了这个接口来提供各自的解释逻辑。 ######[AI写代码神器 | 373点数解答 | 2024-10-17 17:24:05]

相关提问
本站限时免费提问中
实用工具查看更多
Linux在线手册 [开发类]
Jquery在线手册 [开发类]
今日油价 [生活类]
图片互转base64 [开发类]
时间转换器 [开发类]