概述:
1.异常给初学者的感觉(笔者当时就是这个感觉,不知道其他人是否有共鸣?)
1.异常是个什么东西?理解不了
2.很复杂
3.异常很“简陋”,没什么用
4.我保证我写的程序正确性和健壮性 就用不到它了
2.解释:
1.异常是java用来处理程序错误的一种机制,所谓的错误不是语法错误,而是一些不可预期的运行时错误(主要)
2.只要你会用,其实异常并不复杂(相对泛型啊 线程啊 来说)
3.恰恰相反,异常是十分强大的,前提是你得会用
4.记住你是人不是神,你不可能枚举出所有的错误情况,
即便你有这个能力,真这么做了 你的程序会相当的臃肿(写1000行程序,800行在处理所有可能产生的情况,无论这种情况重要与否)。
3.异常存在和使用的意义
1.弥补我们人类思维缜密性的不足,处理那些不可预知的错误,保证程序正常运行。
2.简化开发,你不用去枚举所有可能出现的情况,只需要做和业务逻辑相关的有用的,其他不重要的(相对业务逻辑来说)让异常帮你搞定。
4.java中把非正常情况分为异常(Exception)和错误(Error),这两个类都是Throwable的子类
异常(Exception):我们主要讨论的,程序运行时候产生的错误。
错误(Error):虚拟机级的错误,一般我们无能力从程序的角度去处理他。
5.下面我们通过感官来认识一下异常
package com.cxy.exception; import java.util.List; /** 几种常见异常的演示(异常概述) * @author cxy */ public class SomeException { public static void main(String[] args) { try { test(21,0); }catch(Exception e) { e.printStackTrace(); } //访问索引是5的元素,会抛出数组越界的异常 ArrayIndexOutOfBoundsException try { //实际 下面这句没有必要在这里 但是为了结构层次清楚 我将这行放到了这个位置 String[] array={"A","B","C","D","E"}; System.out.println(array[5]); }catch(Exception e) { e.printStackTrace(); } try { //实际 下面这句没有必要在这里 但是为了结构层次清楚 我将这行放到了这个位置 List l=null; //初学者习惯这样初始化一个List l.get(0); //尝试访问一个空的对象,会抛出空指针(引用)异常 NullPointerException //当然 你会说 我不会这么傻去访问一个null的方法,这个例子只是一个简单的缩影,真实程序 可能你调用方法的时候并没有预计到这时候他是null }catch(Exception e) { e.printStackTrace(); } System.out.println("程序正常运行"); } /** * 当b是0的时候会抛出算数错误异常 ArithmeticException */ public static void test(int a,int b) { System.out.println("a/b="+a/b); } }
结束语:
1.上面的程序演示了3个比较常见的异常,让大家从感官上认识一下异常
2.程序虽然有3个异常,但是大家发现 最后仍然打印了“程序正常运行”,这就是异常价值体现之一(保证程序正常运行)
3.控制台打印了各种异常的信息,初学者开发的时候 要注意这些异常,这也是提高开发效率的方法之一。
相关连接:
声明:
1.原创文章,转载请标明并加本文连接。
2.更详尽的API请参见 http://docs.oracle.com/javase/7/docs/api/
3.文章反映个人愚见,如有异议欢迎讨论指正
相关推荐
完整版 Java基础入门教程 Java程序语言设计 01 java语言基础 Java语言概述(共24页).ppt 完整版 Java基础入门教程 Java程序语言设计 02 java语法基础 Java语法基础(共32页).ppt 完整版 Java基础入门教程 Java程序...
JAVA_6 异常处理Exceptions JAVA_7 IO输入输出 JAVA_8 AWT图形界面编程 JFC AWT Swing JAVA_8 AWT图形界面编程 JFC Swing JAVA_9 Applet JAVA_10 线程 JAVA_11 网络程序设计 JAVA_12 JFC Swing JAVA_13 JDBC JAVA_13...
完整版 Java编程基础入门教程 Java语言程序设计 第1章_java概述(共50页).ppt 完整版 Java编程基础入门教程 Java语言程序设计 第2章_语言基础(共45页).ppt 完整版 Java编程基础入门教程 Java语言程序设计 第3章_...
完整版 Java基础入门教程 Java程序语言设计 01 java语言基础 Java语言概述(共24页).ppt 完整版 Java基础入门教程 Java程序语言设计 02 java语法基础 Java语法基础(共32页).ppt 完整版 Java基础入门教程 Java程序...
完整版精品java课件 Java基础入门教程 Java程序设计 第1章 Java语言概述(共38页).ppt 完整版精品java课件 Java基础入门教程 Java程序设计 第2章 java语言基础(共31页).ppt 完整版精品java课件 Java基础入门教程 ...
计算机后端-Java-Java核心基础-第17章 异常处理 06. 异常概述.avi
完整版精品java课件 Java基础入门教程 Java程序设计 第1章 Java语言概述(共38页).ppt 完整版精品java课件 Java基础入门教程 Java程序设计 第2章 java语言基础(共31页).ppt 完整版精品java课件 Java基础入门教程 ...
Java基础Java 语言概述pptx Java基础Java基本语法.pptx Java基础 Java常用类,pptx Java基础 Java类设计pptx Java基础 Java集合.pptx Java基础反射pptx Java基础 多线程.pptx Java基础 异常处理pptx Java基础 枚举&...
完整版 Java基础入门教程 Java程序语言设计 01 java语言基础 Java语言概述(共24页).ppt 完整版 Java基础入门教程 Java程序语言设计 02 java语法基础 Java语法基础(共32页).ppt 完整版 Java基础入门教程 Java程序...
完整版 Java基础入门教程 Java程序语言设计 01 java语言基础 Java语言概述(共24页).ppt 完整版 Java基础入门教程 Java程序语言设计 02 java语法基础 Java语法基础(共32页).ppt 完整版 Java基础入门教程 Java程序...
完整版精品java课件 Java基础入门教程 Java程序设计 第1章 Java语言概述(共38页).ppt 完整版精品java课件 Java基础入门教程 Java程序设计 第2章 java语言基础(共31页).ppt 完整版精品java课件 Java基础入门教程 ...
Java基础入门教程 Java编程技术01 java概述(2学时)(共27页).ppt Java基础入门教程 Java编程技术02 Java编程基础(4学时)(共55页).ppt Java基础入门教程 Java编程技术03 数组(2学时)(共22页).ppt Java基础入门...
一、 Java概述 3 二、 Java语法基础 5 数据类型 5 运算符号 14 语句 15 函数 15 方法重载(Overloadjing)与重写(Overriding) 16 数组 17 总结 18 三、 常见关键字 20 四、 面向对象★★★★★ 21 五、 封装(面向...
完整版 Java基础入门教程 Java程序语言设计 01 java语言基础 Java语言概述(共24页).ppt 完整版 Java基础入门教程 Java程序语言设计 02 java语法基础 Java语法基础(共32页).ppt 完整版 Java基础入门教程 Java程序...
Java 概述 Java 基础 Java 流程控制 Java 方法 Java 数组 Java 类和对象 Java 类的继承和多态机制 Java 接口和包 Java 异常处理 Java 输入与输出 Java 图形用户界面设计 Java Swing 组件 Java Applet 程序 Java 多...
完整版 Java基础入门教程 Java程序语言设计 01 java语言基础 Java语言概述(共24页).ppt 完整版 Java基础入门教程 Java程序语言设计 02 java语法基础 Java语法基础(共32页).ppt 完整版 Java基础入门教程 Java程序...
完整版精品java课件 Java基础入门教程 Java程序设计 第1章 Java语言概述(共38页).ppt 完整版精品java课件 Java基础入门教程 Java程序设计 第2章 java语言基础(共31页).ppt 完整版精品java课件 Java基础入门教程 ...
完整版 Java基础入门教程 Java程序语言设计 01 java语言基础 Java语言概述(共24页).ppt 完整版 Java基础入门教程 Java程序语言设计 02 java语法基础 Java语法基础(共32页).ppt 完整版 Java基础入门教程 Java程序...
完整版 Java基础入门教程 Java程序语言设计 01 java语言基础 Java语言概述(共24页).ppt 完整版 Java基础入门教程 Java程序语言设计 02 java语法基础 Java语法基础(共32页).ppt 完整版 Java基础入门教程 Java程序...
完整版精品java课件 Java基础入门教程 Java程序设计 第1章 Java语言概述(共38页).ppt 完整版精品java课件 Java基础入门教程 Java程序设计 第2章 java语言基础(共31页).ppt 完整版精品java课件 Java基础入门教程 ...