首页 > 代码库 > 异常题目
异常题目
1.建立exception包,编写TestException.java程序,主方法中有以下代码,确定其中可能出现的异常,进行捕获处理。
for(inti=0;i<4;i++){
int k;
switch(i){
case 0:
int zero=0;
k=911/zero;
break;
case1:
int b[]=null;
k = b[0];
break;
case2:
int c[]=new int[2];
k=c[9];
break;
case3:
char ch="abc".charAt(99);
break;
}
}
package exception;public class TestException{ public static void main(String[] args) { try { for(int i=0;i<4;i++) { int k; switch(i) {// case 0:// int zero=0;// k=911/zero;// break;// case 1:// int b[]=null;// k = b[0];// break;// case 2:// int c[]=new int[2];// // k=c[9];// break; case 3: char ch="abc".charAt(99); break; } } }// catch(ArithmeticException a)// {// System.out.println(a.getMessage()+"被除数不能为0");// }// catch(NullPointerException n)// {// System.out.println(n.getMessage()+"空指针");// n.printStackTrace();// }// catch(ArrayIndexOutOfBoundsException ar)// {// System.out.println(ar.getMessage()+"索引超出长度");// ar.printStackTrace();// } catch(StringIndexOutOfBoundsException s) { System.out.println(s.getMessage()+"此处不能是字符串"); s.printStackTrace(); } }}
2.建立exception包,建立Bank类,类中有变量double balance表示存款,Bank类的构造方法能增加存款,Bank类中有取款的方法withDrawal(double dAmount),当取款的数额大于存款时,抛出InsufficientFundsException,取款数额为负数,抛出NagativeFundsException,如new Bank(100),表示存入银行100元,当用方法withdrawal(150),withdrawal(-15)时会抛出自定义异常。
package exception;public class Bank { double balance;//存款 public Bank(double balance) { super(); this.balance = balance; } //取款 //判断然后抛出异常 public void withDrawal(double dAmount) throws InsufficientResourcesException, NagativeFundsException { if(dAmount < 0) { throw new NagativeFundsException("取款数是负的") ; } if(dAmount > balance) { throw new InsufficientResourcesException("余额不足") ; } balance -= dAmount ; } }
package exception;public class InsufficientResourcesException extends Exception { //接受Bank抛出的异常 public InsufficientResourcesException(String msg) { super(msg) ; }}
package exception;public class NagativeFundsException extends Exception { public NagativeFundsException(String msg) { super(msg) ; }}
package exception;public class Ceshi_bank { public static void main(String[] args) throws InsufficientResourcesException, NagativeFundsException { // TODO 自动生成的方法存根 Bank b=new Bank(100); b.withDrawal(150); b.withDrawal(-15); }}
异常题目
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。