异常登陆案件

需求:

编写程序模拟用户登陆:
1、程序开始执行时,提示用户输入“用户名”和“密码”信息。
2、输入信息之后,后台java程序模拟用户登陆。
3、注册时用户名要求长度在[6-14]之间,小于或者大于都表示异常。

注意:
   完成登陆的方法放到一个单独的类中。
   异常类自定义即可。

   class UserService {
      public void log(String username,String password){
         //这个方法中完成登陆!
      }
   }

   编写main方法,在main方法中接收用户输入的信息,在main方法
   中调用UserService的log方法完成登陆。
package day25;

import java.util.Scanner;

/*
编写程序模拟用户登陆:
1、程序开始执行时,提示用户输入“用户名”和“密码”信息。
2、输入信息之后,后台java程序模拟用户登陆。
3、注册时用户名要求长度在[6-14]之间,小于或者大于都表示异常。

注意:
	完成登陆的方法放到一个单独的类中。
	异常类自定义即可。

	class UserService {
		public void log(String username,String password){
			//这个方法中完成登陆!
		}
	}

	编写main方法,在main方法中接收用户输入的信息,在main方法
	中调用UserService的log方法完成登陆。
*/
public class ExceptionHomework {
    public static void main(String[] args) {
        System.out.println("------用户登陆界面------");
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入用户名:");
        String username = sc.nextLine();
        System.out.println("请输入密码:");
        String password = sc.nextLine();
        UserService u = new UserService();
        //使用 try catch 捕捉异常
        try {
            u.log(username, password);
        } catch (MyException e) {
            System.out.println(e.getMessage());
            System.out.println("------请重新输入!------");
        }
        //若执行 try catch 代码,则后续代码将不再执行!
    }
}

class UserService {
    String user = "zhangHao";
    String pwd = "13579";

    public UserService() {

    }

    //登陆方法
    public void log(String username, String password) throws MyException {
        if (null == username || username.length() < 6 || username.length() > 14) {
            //手动抛出异常,再使用throws继续向上抛
            throw new MyException("登陆时时用户名要求长度在[6-14]之间");
        } else {
            if (username.equals(user) && password.equals(pwd)) {
                System.out.println("------登陆成功!------");
            } else {
                System.out.println("------登陆失败!------");
            }
        }
    }
}

//自定义输入异常
//编译时异常
class MyException extends Exception {
    public MyException(String message) {
        super(message);
    }
}

结果1:用户名正确,密码正确!

 31ef209135b74de39f85051187adfdee.png

 结果2:用户名正确,密码不正确!

fc1e12d4151348089a74fbcc4fb5d56b.png

 结果3:用户名输入异常!(密码输入对错对此无影响)

7f70edb9445e4343998cdcd0cb7db8b4.png

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ZH_1913

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值