实现一个简单的控制台版用户登陆程序, 程序启动提示用户输入用户名密码. 如果用户名密码出错, 使用自定义异常的方式来处理
//密码错误异常类
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("登录成功");}
}相关文章:
实现一个简单的控制台版用户登陆程序, 程序启动提示用户输入用户名密码. 如果用户名密码出错, 使用自定义异常的方式来处理
//密码错误异常类 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;pu…...
Java 大厂八股文面试专题-设计模式 工厂方法模式、策略模式、责任链模式
面试专题-设计模式 前言 在平时的开发中,涉及到设计模式的有两块内容,第一个是我们平时使用的框架(比如spring、mybatis等),第二个是我们自己开发业务使用的设计模式。 面试官一般比较关心的是你在开发过程中ÿ…...
Anaconda Prompt输入jupyter lab无反应
问题:Anaconda Prompt界面输入指令无反应 原因:公司电脑勒索病毒防御工具阻止了进程 解决:找到黑名单恢复进程...
JavaScript Web APIs - 05 Window对象 、本地存储
Web APIs - 05 文章目录 Web APIs - 05js组成window对象定时器-延迟函数location对象navigator对象histroy对象本地存储(今日重点)localStorage(重点)sessionStorage(了解)localStorage 存储复杂数据类型 综…...
Ansible学习笔记6
stat模块:获取文件的状态信息,类似Linux的stat状态。 获取/etc/fstab文件的状态。 [rootlocalhost tmp]# ansible group1 -m stat -a "path/etc/fstab" 192.168.17.106 | SUCCESS > {"ansible_facts": {"discovered_inter…...
Linux挖矿程序清除
1. 找到挖矿进程 2.找到病毒的文件地址 ls -l /proc/进程ID/exe3.删除文件命令 rm -rf 文件地址4.杀死挖矿进程 kill -9 进程ID...
使用Git和Github上传代码文件
1. 先检查是否安装好git git --version2. 输入你的github用户名 git config --global user.name "用户名"3. 输入你的github邮件 git config --global user.email "邮件地址"4. 设定git推送本地仓库中与远程仓库中具有相同名称的所有分支。 git config…...
OpenAI发布ChatGPT企业级版本
本周一(2023年8月28日)OpenAI 推出了 ChatGPT Enterprise,这是它在 4 月份推出的以业务为中心的订阅服务。该公司表示,根据新计划,不会使用任何业务数据或对话来训练其人工智能模型。 “我们的模型不会从你的使用情况中…...
vue3中axios的使用方法
在Vue 3中使用axios发送HTTP请求的方法与Vue 2中基本相同。首先,需要安装axios库: npm install axios然后,在Vue组件中引入axios: import axios from axios;接下来,可以在Vue组件的方法中使用axios发送HTTP请求。例如…...
【docker】容器的运行、停止、查看等基本操作
容器与镜像的区别 image镜像 Docker image是一个read-only文件,位于磁盘上这个文件包含文件系统,源码,库文件,依赖,工具等一些运行application所需要的文件可以理解成一个模板docker image具有分层的概念 container…...
Python|OpenCV-鼠标自动绘制图像(4)
前言 本文是该专栏的第4篇,后面将持续分享OpenCV计算机视觉的干货知识,记得关注。 在本专栏之前,有详细介绍使用OpenCV绘制图形以及添加文字的方法,感兴趣的同学可往前翻阅查看“Python|OpenCV-绘制图形和添加文字的方法(2)”。 而本文重点来介绍使用OpenCV来操作鼠标,以…...
IDEA 设置提示信息
IDEA 设置提示信息 File->Settings->Editor->Code Completion 取消勾选 Math case...
清理docker镜像方法
首先stop ps -a里的容器,然后rm容器,最后再rmi镜像 先停止容器 rm容器 docker rmi 镜像 删除后可以发现已经不存在...
windows 搭建 swoole开发环境(官网已支持)
第一步下载:swoole官网下载 swoole-cli-v5.0.3-cygwin-x64.zip 只支持 64 位的系统 第二步解压到指定文件夹:E:\phpstudy_pro\WWW\swoole-cli-v5.0.3-cygwin-x64 第三步设置环境变量:把解压后的文件夹下的 bin 目录路径配置到系统的 Path 环境…...
matlab的基本使用
matlab的基本使用,可以参考如下的教程:matlab教程 本文针对基本内容进行记录。 matlab简介 MATLAB是美国MathWorks公司出品的商业数学软件,用于数据分析、无线通信、深度学习、图像处理与计算机视觉、信号处理、量化金融与风险管理、机器人&…...
hznuoj---python查找最大字母
Description 对于输入的每个字符串,查找其中的最大字母,在该字母后面插入字符串"(max)"。 Input 输入数据包括多个测试实例,每个实例由一行长度不超过100的字符串组成,字符串仅由大小写字母构成。注:A与a是…...
Leetcode---360周赛
题目列表 2833. 距离原点最远的点 2834. 找出美丽数组的最小和 2835. 使子序列的和等于目标的最少操作次数 2836. 在传球游戏中最大化函数值 一、距离原点最远的点 这题主要是理解题意,遇到L往左走,遇到R往右走,遇到_左右都可以走&#x…...
CocosCreator3.8研究笔记(三)CocosCreator 项目结构说明及编辑器的简单使用
我们通过Dashboard 创建一个2d项目,来演示CocosCreator 的项目结构。 等待创建完成后,会得到以下项目工程: 一、assets文件夹 assets文件夹:为资源目录,用来存储所有的本地资源,如各种图片,脚本…...
html5学习笔记18-web存储、web sql、web worker
https://www.runoob.com/html/html5-webstorage.html HTML5 web 存储,可替代 cookie 的本地存储方式。 客户端存储数据的两个对象:localStorage网站的 sessionStorage窗口的 localStorage.setItem("sitename", "菜鸟教程"); // 存…...
大数据专业毕业能从事什么工作
大数据从业领域很宽广,不管是科技领域还是食品产业,零售业等都是需要大数据人才进行大数据的处理,以提供更好的用户体验,优化库存降低成本预测需求。 大数据开发做什么? 大数据开发分两类,编写Hadoop、Spa…...
免ROOT使用Frida:Android合规调试的底层原理与四条落地路径
1. 这不是“越狱式”调试,而是一条被低估的合规路径 很多人一听到 Frida,第一反应就是“得先 root 手机”“得 patch apk”“得重打包签名”——仿佛不撬开系统大门,就进不了应用内存。我最初也这么想,直到在某次金融类 App 的灰…...
初创团队如何利用Taotoken控制大模型API成本并保持开发灵活性
🚀 告别海外账号与网络限制!稳定直连全球优质大模型,限时半价接入中。 👉 点击领取海量免费额度 初创团队如何利用Taotoken控制大模型API成本并保持开发灵活性 对于初创团队而言,大模型API是加速产品原型验证和功能开…...
Qt串口通信与STM32 PWM实战:滑动条控制RGB灯全流程解析
1. 项目概述与核心价值最近在做一个智能家居控制面板的原型,核心需求之一就是通过一个直观的图形界面,去实时调节RGB氛围灯的亮度和颜色。这听起来像是把手机App上的功能搬到了嵌入式设备上,但背后的实现链路却完全不同。我选择了Qt作为上位机…...
用知识图谱重构搜索引擎
一、传统搜索:关键词的“机械匹配”时代你输入词,它找文档我们熟悉的搜索引擎,无论是早期的Google还是百度的首页,核心逻辑都是关键词匹配。你输入“苹果热量”,它就把互联网里包含“苹果”和“热量”两个词的网页抓出…...
AI Agent 编排框架比较:LangChain vs LlamaIndex vs Agent Info
AI Agent 编排框架比较:LangChain vs LlamaIndex vs Agent Info 前言 随着 AI Agent 的流行,出现了多个优秀的编排框架。选择合适的框架对于构建高效的 Agent 系统至关重要。 我在项目中使用过多个 Agent 框架,对它们的特点和适用场景有深入理…...
告别虚拟机!用WSL2自带的SSH服务连接VSCode远程开发(附端口冲突解决)
告别虚拟机!用WSL2自带的SSH服务连接VSCode远程开发(附端口冲突解决) 在Windows系统上进行Linux开发时,传统虚拟机方案往往显得笨重且资源占用高。WSL2的出现彻底改变了这一局面,它提供了近乎原生的Linux内核体验&…...
Bilibili-Evolved:彻底改造你的B站体验!新手必看的个性化增强指南
Bilibili-Evolved:彻底改造你的B站体验!新手必看的个性化增强指南 【免费下载链接】Bilibili-Evolved 强大的哔哩哔哩增强脚本 项目地址: https://gitcode.com/gh_mirrors/bi/Bilibili-Evolved 你是否厌倦了B站千篇一律的界面?是否觉得…...
ESP32外部中断防抖实战:用MicroPython搞定按键误触,附完整消抖代码
ESP32外部中断防抖实战:用MicroPython搞定按键误触,附完整消抖代码 当你按下ESP32开发板上的按键时,是否遇到过LED灯莫名其妙闪烁多次?或者智能家居设备偶尔会误触发某个功能?这些"灵异事件"的罪魁祸首&…...
华硕笔记本性能优化神器:G-Helper轻量控制工具完全指南
华硕笔记本性能优化神器:G-Helper轻量控制工具完全指南 【免费下载链接】g-helper Lightweight Armoury Crate alternative for Asus laptops with nearly the same functionality. Works with ROG Zephyrus, Flow, TUF, Strix, Scar, ProArt, Vivobook, Zenbook, E…...
线粒体氧化磷酸化的新靶点:S-Gboxin的发现与研究进展
在肿瘤治疗的探索历程中,科学家们始终在寻找能够精准打击癌细胞而又最大限度保护正常组织的新型药物。2019年,一项发表在Nature杂志上的研究引起了学界广泛关注——施宇峰团队首次报道了Gboxin这一化合物的发现与独特的作用机制[1]。作为Gboxin的代谢稳定…...
