实现一个简单的控制台版用户登陆程序, 程序启动提示用户输入用户名密码. 如果用户名密码出错, 使用自定义异常的方式来处理

java 复制代码
	//密码错误异常类
public class PasswordError extends Exception {
    public PasswordError(String message){
        super(message);
    }
}

    //用户名错误异常类
public class UserError extends Exception{
    public UserError(String message){
        super(message);
    }
}

import java.util.Scanner;

public class RegisterException {
    private static String userName = "12345678";
    private static String passerWord = "123456";

    public static void main(String[] args) throws UserError, PasswordError {
        Scanner sc = new Scanner(System.in);
        System.out.print("请输入账号:");
        String str1 = sc.nextLine();
        System.out.print("请输入密码:");
        String str2 = sc.nextLine();
        login(str1, str2);
    }

    private static void login(String userName, String passerWord) throws PasswordError, UserError {
        if (!RegisterException.userName.equals(userName)){
        //判断用户名是否输入错误
            throw new UserError("用户名错误");//抛出用户名错误异常       
        }
        if (!RegisterException.passerWord.equals(passerWord)){
        //判断密码是否输入错误
            throw new PasswordError("密码错误");//抛出密码错误异常
        }
        System.out.println("登录成功");
    }
}
相关推荐
guygg8827 分钟前
NOMA功率分配与64 QAM调制中的SIC的MATLAB仿真
开发语言·matlab
开发者小天30 分钟前
python中For Loop的用法
java·服务器·python
flushmeteor35 分钟前
JDK源码-基础类-String
java·开发语言
毕设源码-钟学长39 分钟前
【开题答辩全过程】以 基于ssm的空中停车场管理系统为例,包含答辩的问题和答案
java
不愿是过客1 小时前
java实战干货——长方法深递归
java
u0109272712 小时前
C++中的策略模式变体
开发语言·c++·算法
雨季6662 小时前
构建 OpenHarmony 简易文字行数统计器:用字符串分割实现纯文本结构感知
开发语言·前端·javascript·flutter·ui·dart
雨季6662 小时前
Flutter 三端应用实战:OpenHarmony 简易倒序文本查看器开发指南
开发语言·javascript·flutter·ui
小北方城市网2 小时前
Redis 分布式锁高可用实现:从原理到生产级落地
java·前端·javascript·spring boot·redis·分布式·wpf
进击的小头3 小时前
行为型模式:策略模式的C语言实战指南
c语言·开发语言·策略模式