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

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("登录成功");
    }
}
相关推荐
Tiger_shl几秒前
【.Net技术栈梳理】01-核心框架与运行时(CLR)
开发语言·.net
float_六七3 分钟前
IntelliJ IDEA断点调试全攻略
java·ide·intellij-idea
Tiger_shl5 分钟前
【.Net技术栈梳理】02-核心框架与运行时(GC管理)
开发语言·.net
渣哥9 分钟前
面试官最爱追问:多线程到底用来干什么?
java
阿里matlab建模师10 分钟前
【直流电机鲁棒控制】matlab实现H无穷大控制的直流电机鲁棒控制研究
开发语言·数学建模·matlab·全国大学生数学建模竞赛·美赛·科研项目
七夜zippoe12 分钟前
分布式事务性能优化:从故障现场到方案落地的实战手记(一)
java·分布式·性能优化
MediaTea19 分钟前
Python 第三方库:SymPy(符号计算工具)
开发语言·python·数学建模
qq_3564086620 分钟前
es通过分片迁移迁移解决磁盘不均匀问题
java·数据库·elasticsearch
他们都不看好你,偏偏你最不争气28 分钟前
【iOS】UIViewController
开发语言·macos·ios·objective-c·cocoa
青衫码上行36 分钟前
【从0开始学习Java | 第17篇】集合(中-Set部分)
java·学习