From 3d9c4f40a86fbe697bbf1878bf41d4b248870f02 Mon Sep 17 00:00:00 2001 From: xuxin <840198532@qq.com> Date: Fri, 16 Oct 2026 15:16:22 +0800 Subject: [PATCH] =?UTF-8?q?s-day05--=E8=87=AA=E5=AE=9A=E4=B9=89=E5=BC=82?= =?UTF-8?q?=E5=B8=B8=E6=A1=88=E4=BE=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/com/inmind/exception01/Demo11.java | 32 +++++++++++++++++++ .../inmind/exception01/RegistException.java | 14 ++++++++ 2 files changed, 46 insertions(+) create mode 100644 s-day05/src/com/inmind/exception01/Demo11.java create mode 100644 s-day05/src/com/inmind/exception01/RegistException.java diff --git a/s-day05/src/com/inmind/exception01/Demo11.java b/s-day05/src/com/inmind/exception01/Demo11.java new file mode 100644 index 0000000..b7e14b9 --- /dev/null +++ b/s-day05/src/com/inmind/exception01/Demo11.java @@ -0,0 +1,32 @@ +package com.inmind.exception01; + +import java.util.Scanner; + +//要求:我们模拟登陆操作,如果用户名已存在,则抛出异常并提示:亲,该用户名已经被注册 +public class Demo11 { + static String[] usernames = {"jack","tom","rose"}; + + public static void main(String[] args) { + try { + Scanner sc = new Scanner(System.in); + System.out.println("请输入用户名:"); + String username = sc.nextLine(); + regist(username); + System.out.println(username+"注册成功"); + } catch (RegistException e) { + String msg = e.getMessage(); + System.out.println(msg); + } + System.out.println("程序结束"); + } + + private static void regist(String username) { + //如果传入用户名,已经在数组中存在了,说明已经注册过了,那我们主动抛出一个业务异常RegistException,并携带业务信息 + for (String u : usernames) { + if (u.equals(username)) { + throw new RegistException("该用户名"+username+"已存在,请重新输入"); + } + } + //如果没有抛出异常,说明注册业务是正确。 + } +} diff --git a/s-day05/src/com/inmind/exception01/RegistException.java b/s-day05/src/com/inmind/exception01/RegistException.java new file mode 100644 index 0000000..e5f1318 --- /dev/null +++ b/s-day05/src/com/inmind/exception01/RegistException.java @@ -0,0 +1,14 @@ +package com.inmind.exception01; +/* + 自定义异常: + 1.编译时异常:提醒代码有语法问题或者声明了某些异常(继承Exception) + 2.运行时异常:用来处理业务逻辑(继承RuntimeException) + */ +public class RegistException extends RuntimeException{ + public RegistException() { + } + + public RegistException(String message) { + super(message); + } +}