重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
我知道你想表达什么意思,就是不用自己if else判断,自己写的自定义异常能够识别出来错误,但是这样是不太可行的(至少我暂时没在网上找到相应方案或自己想出来)
创新互联公司服务项目包括长寿网站建设、长寿网站制作、长寿网页制作以及长寿网络营销策划等。多年来,我们专注于互联网行业,利用自身积累的技术优势、行业经验、深度合作伙伴关系等,向广大中小型企业、政府机构等提供互联网行业的解决方案,长寿网站推广取得了明显的社会效益与经济效益。目前,我们服务的客户以成都为中心已经辐射到长寿省份的部分城市,未来相信会继续扩大服务区域并继续获得客户的支持与信任!
首先,if else是必须的,你不去判断是否异常了何来的抛出异常?
就比如系统编译时,一个String 变量还没被赋值,就被System.out.print()出来了,那这样肯定是不可行的,肯定会进行判断,这一套判断是系统自己定义的,所以编译的时候当然会执行(因为不进行判断出错肯定会导致程序挂了),那你自己定义出来的,只是你人为定义,你说他错他就错,其实不会导致程序挂了,你把这套强加到系统,让他编译的时候进行判断这样也可以,不过估计太复杂了,这个Exception内是不进行这些判断的,只是抛出一个信息,判断什么的都是在其他的地方进行,所以你这个还是不能离开判断,然后手动抛出,用try catch处理,代码如下(和其他人的回答差不多的),最后码字不易望采纳
class freezedException extends Exception {
public freezedException() {
super("冻结");
}
}
class nomoneyException extends Exception {
public nomoneyException() {
super("没钱");
}
}
class TextException {
public static void main(String[] args) {
boolean flag = true;
float money = 0, i = 0;
try {
if (!flag)
throw new freezedException();
if (i money)
throw new nomoneyException();
} catch (freezedException e1) {
}
catch (nomoneyException e2) {
}
}
}
做一个统计值比如是:int count =0;
如果输入错误就:++count;如果count=3就冻结,
如果输入正确就:count=0;
实际上就是在帐户上加锁嘛,在账号表中加一个状态字段,比如enabled,0即为冻结状态,1为正常使用状态。当用户违反了某些操作时,将enabled状态改为0.当然,登陆游戏时判断用户是否被锁了。
while是循环啊,应该用if吧,让用户有三次输入验证的机会string uid="XX";//用户输入的帐号string pwd="XX";//用户输入的密码int num=1;//用户输入验证的次数 if(num=3){ if(如果用户输入的帐号和密码验证通过){ // 进行相关操作 }else{ num++; return;// } }else{ //弹出消息,告知用户因为输入错误超过3次,帐号被锁定 }}
需要设置一个表示状态的字段,isActive[true(活动)或false(冻结)] 表示是否活动,如果是则正常登陆,false则为冻结。
//1、从数据库查询用户信息状态
//2、判断
if(用户存在?) {
if(!isActive?) {
//提示账号冻结或其他操作
}
//成功登陆
} else {
//提示不存在或者跳转注册
}