当前位置:首页 > 开发 > 编程语言 > Java > 正文

java异常的处理探讨

发表于: 2014-05-13   作者:百合不是茶   来源:转载   浏览:
摘要: //java异常  /* 1,了解java 中的异常处理机制,有三种操作 a,声明异常  b,抛出异常  c,捕获异常 2,学会使用try-catch-finally来处理异常 3,学会如何声明异常和抛出异常 4,学会创建自己的异常   */   //2,学会使用try-catch-finally来处理异常  

//java异常 

/*

1,了解java 中的异常处理机制,有三种操作

a,声明异常 

b,抛出异常 

c,捕获异常

2,学会使用try-catch-finally来处理异常

3,学会如何声明异常和抛出异常

4,学会创建自己的异常

 

*/

 

//2,学会使用try-catch-finally来处理异常

 

/*使用try-catch

*/

public class TryCatchTest {

 

public static void main(String[] args) {

int number,value;

try{

number = 0;

value = 3/number;

//可能会抛出ArithmeticException异常,使用catch老捕获这个异常

}catch(ArithmeticException e){

e.printStackTrace();

System.out.println("错误:被0整除");

}

}

}

 
 
/*

定义一个try-catch-finally来捕获异常

*/

public class finallyTest {

 

public static void main(String[] args) {

 

try{

int[] a = new int[3];

a[3] =3;//数组超越边界

 

 }catch(ArithmeticException e){

//Exception类是从Throwable继承的,同时也有其方法

//toString();对当前异常对象的描述

//getMessage();获取返回的信息

//printStackTrace();打印当前异常对象详细消息的字符串

 System.out.println(" e.toString()"+ e.toString());

 System.out.println("e.getMessage()"+ e.getMessage());

 System.out.println ("e.hashCode()"+e.hashCode());

 System.out.println ("e.printStackTrace()");

e.printStackTrace();

 System.out.println("发生了异常!");

 }finally{

 //不管前面是否执行finally都会输出

 System.out.println("最后执行这句话!");

 }

}

}
 

 

 

 

//3,学会如何声明异常和抛出异常

 

/*会用关键字throw是在try中来声明,关键字throws是在方法体中声明

如果一个方法可能产生异常,那么该方法要么需要try-catch来捕获

并处理他们,要么主动声明抛出,否则该程序将无法编译,除非是编译

过成中的异常

throws关键字用在方法声明中

 

throw用在try块中来声明并抛出一个异常

public void go(){

try{

thorw new IOException("文件不存在!");

}catch(Exception e){

System.out.println(e.getMessage());

}

}
 

 


 

import java.io.*;

 

public class throwsTest {

 

public static void main(String[] args){

 

throwsTest thorwstest = new throwsTest();

 

try{

thorwstest.readFile();

}catch(IOException e){

e.printStackTrace();

}

}

 

 

//readFile() 方法抛出IOException

public void readFile() throws IOException{

 

FileInputStream fis = new FileInputStream("hello.txt");

int b;

b = fis.read();

while(b!=-1){

System.out.println((char)b);

b = fis.read();

}

fis.close();

}

}

*/

 

/*运行结果,如果没有hello.txt就出现下面的 ,如果有就输入字符

 * java.io.FileNotFoundException: hello.txt (系统找不到指定的文件。)

at java.io.FileInputStream.open(Native Method)

at java.io.FileInputStream.<init>(Unknown Source)

at java.io.FileInputStream.<init>(Unknown Source)

at java面向对象设计.throwsTest.readFile(throwsTest.java:33)

at java面向对象设计.throwsTest.main(throwsTest.java:23)

 

 

*/

 
 

 

 

//4,学会创建自己的异常

//下面的代码中定义了声明了一个异常,并捕获,

 

public class TryCatchTest {

 

public static void main(String[] args) {

int number,value;

try{

number = 0;

value = 3/number;

 

}catch(Exception e){

e.printStackTrace();

System.out.println("错误:被0整除");

}

}

 

}

 

 
 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

java异常的处理探讨

  • 0

    开心

    开心

  • 0

    板砖

    板砖

  • 0

    感动

    感动

  • 0

    有用

    有用

  • 0

    疑问

    疑问

  • 0

    难过

    难过

  • 0

    无聊

    无聊

  • 0

    震惊

    震惊

编辑推荐
首先谈一下异常的分类。先看下图: 未检查的异常:派生至Error类和RuntimeException类的所有异常类(
为什么要在JEE项目中谈异常处理呢? 可能许多java初学者都想说:“异常处理不就是 try….catch…fin
上篇博客:详解Java异常处理——编程式异常处理 介绍了编程式异常的处理,我们知道,用这种方法,在
在程序设计中,进行异常处理是非常关键和重要的一部分。一个程序的异常处理框架的好坏直接影 响到整
异常处理: java中的异常处理机制主要依赖于try,catch,finally,throw,throws五个关键字。其中,
http://www.cnblogs.com/with-wang/archive/2012/03/24/java_doc_6.html 本文从Java异常最基本的概
2004 年 8 月 10 日 跟踪无法预期的运行时异常可能是一件又慢又费力的事情,只获得默认线程名称和堆
1 java异常继承体系 1.1 常用异常继承体系 Java把所有的非正常情况分为两种情况:异常(Exception)
1.异常的分类 The Error hierarchy describes internal errors and resource exhaustion inside the
一、异常分类 二、异常种类 声明式异常(自动处理异常):用throws捕捉到异常类型,将捕捉异常的任
版权所有 IT知识库 CopyRight © 2009-2015 IT知识库 IT610.com , All Rights Reserved. 京ICP备09083238号