这里有新鲜出炉的Java函数式编程,程序狗速度看过来!
java 是一种可以撰写跨平台应用软件的面向对象的程序设计语言,是由Sun Microsystems公司于1995年5月推出的Java程序设计语言和Java平台(即JavaEE(j2ee), JavaME(j2me), JavaSE(j2se))的总称。
本文给大家分享一道关于java异常处理的题目,非常不错,具有参考借鉴价值,需要的朋友可以参考下
1、建立exception包,编写TestException.java程序,主方法中有以下代码,确定其中可能出现的异常,进行捕获处理。
- public class YiChang {
- public static void main(String[] args) {
- for (int i = 0; i < 4; i++) {
- int k;
- switch (i) {
- case 0:
- int zero = 0;
- try {
- k = 911 / zero;
- } catch(ArithmeticException e) {
- System.out.println("出现算数异常!");
- }
- break;
- case 1:
- try {
- int b[] = null;
- k = b[0];
- } catch(NullPointerException e) {
- System.out.println("出现空指针异常!");
- }
- break;
- case 2:
- int c[] = new int[2];
- try {
- k = c[9];
- } catch(ArrayIndexOutOfBoundsException e) {
- System.out.println("出现数组序号溢出!");
- }
- break;
- case 3:
- try {
- char ch = "abc".charAt(99);
- } catch(StringIndexOutOfBoundsException e) {
- System.out.println("出现数据类型转换异常!");
- }
- break;
- }
- }
- }
- }
2、建立exception包,建立Bank类,类中有变量double balance表示存款,Bank类的构造方法能增加存款,Bank类中有取款的发方法withDrawal(double dAmount),当取款的数额大于存款时,抛出InsufficientFundsException,取款数额为负数,抛出NagativeFundsException,如new Bank(100),表示存入银行100元,当用方法withdrawal(150),withdrawal(-15)时会抛出自定义异常。
- public class InsufficientFundsException extends Exception {
- public String getMessage() {
- return "您的余额不足!";
- }
- }
- public class NagativeFundsException extends Exception {
- public String getMessage() {
- return "取款金额不能为负数!";
- }
- }
- public class Bank {
- private static double balance;
- Bank() {};
- Bank(double balance) {
- this.balance = balance;
- }
- public static void withDrawal(double dAmount) throws InsufficientFundsException,
- NagativeFundsException {
- if (dAmount > balance) {
- throw new InsufficientFundsException();
- }
- if (dAmount < 0) {
- throw new NagativeFundsException();
- }
- }
- public static void main(String[] args) {
- Bank b = new Bank(100);
- System.out.println("我有" + balance + "元存款!");
- try {
- withDrawal(150);
- } catch(InsufficientFundsException | NagativeFundsException e) {
- e.printStackTrace();
- }
- try {
- withDrawal( - 15);
- } catch(NagativeFundsException | InsufficientFundsException e) {
- e.printStackTrace();
- }
- }
- }
一道关于一道关于java异常处理的题目就给大家介绍这么多,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的,在此也非常感谢大家对PHPERZ网站的支持!
来源: http://www.phperz.com/article/17/1203/359885.html