Java学习笔记--------异常处理
2015-07-16 16:52
441 查看
异常:
异常:
案例:
packet com.test1;
import java.io.*;
public class Test3
{
public static void main(String[] args)
{
//检查异常:打开文件
FileReader fr=new FileReader("d:\\aa.text");
// 2.连接一个192.168.12.12 IP的端口。端口号:4567
Socket s=newSocket("192.168.1.23",78);
//运行异常
inta=4/0;
}
}
异常处理:
1.try .......catch
程序运行产生异常时,将从异常发生点中断程序并向外抛出异常信息。
例如:
int x=(int)(Math.random()*5);
int y=(int)(Math.random()*10);
int [] z=new int [5];
try
{
System.out.println("y/x="+(y/x));
System.out.println("y="+y+"z[y]="+a[y]");
}
catch(ArithmeticException exc1)
{
System.out.println("算术运算符异常"+exc1.getMessage());
}
catch(ArrayIndexOutOfBoundException exc2)
{
System.out.println("数组越界异常:"+exc2.getMessage());
}
疑问:
异常和error有什么区别???
程序运行产生异常时,将从异常发生点中断程序并向外抛出异常信息。
如何理解try ......catch ???
try 块中是什么???
catch块中是什么???
是不是只有在try块中的运行出现错误时,才被catch捕获。
即:
catch块中只能捕获try块中的出现的错误。
catch()形参是:异常对象。用于接收来自try块中传递过来的
实参即:异常对象
//在出现异常的地方,就终止执行代码,
然后就进入到catch()语句
如果有多个catch语句,则进入匹配异常的那个catch语句。
问题2:catch()的形参应该如何选择???
1.如何理解:???
:catch(Exception e)
{
System.out.println("111");
e.printStackTrace();
}
把异常的信息输出,利于排除bug
finally块的使用:
:为什么引出了finally机制?
finally就是:提供了一种保护机制。// 这也解释了,为什么说,Java是一种安全的语言。
finally
{
// 这段代码,不管出不出现异常,都会执行
// 一般说,把需要关闭的资源:如:文件,内存等
进行保护性关闭
}
异常处理:
将异常抛给调用者,让调用者处理异常 throws
部分代码:
class Son
{
public void test2() throws Exception
{
FileReader fr=null;
fr=new FileReader("d:\\dd.txt");
}
}
// 在这时,谁调用,这个方法,它就把异常抛给谁。
packet com.test1;
public class Test4
{
public static void main(String[] args)
{
}
class Father
{
}
}
异常:
案例:
packet com.test1;
import java.io.*;
public class Test3
{
public static void main(String[] args)
{
//检查异常:打开文件
FileReader fr=new FileReader("d:\\aa.text");
// 2.连接一个192.168.12.12 IP的端口。端口号:4567
Socket s=newSocket("192.168.1.23",78);
//运行异常
inta=4/0;
}
}
异常处理:
1.try .......catch
程序运行产生异常时,将从异常发生点中断程序并向外抛出异常信息。
例如:
int x=(int)(Math.random()*5);
int y=(int)(Math.random()*10);
int [] z=new int [5];
try
{
System.out.println("y/x="+(y/x));
System.out.println("y="+y+"z[y]="+a[y]");
}
catch(ArithmeticException exc1)
{
System.out.println("算术运算符异常"+exc1.getMessage());
}
catch(ArrayIndexOutOfBoundException exc2)
{
System.out.println("数组越界异常:"+exc2.getMessage());
}
疑问:
异常和error有什么区别???
程序运行产生异常时,将从异常发生点中断程序并向外抛出异常信息。
如何理解try ......catch ???
try 块中是什么???
catch块中是什么???
是不是只有在try块中的运行出现错误时,才被catch捕获。
即:
catch块中只能捕获try块中的出现的错误。
catch()形参是:异常对象。用于接收来自try块中传递过来的
实参即:异常对象
//在出现异常的地方,就终止执行代码,
然后就进入到catch()语句
如果有多个catch语句,则进入匹配异常的那个catch语句。
问题2:catch()的形参应该如何选择???
1.如何理解:???
:catch(Exception e)
{
System.out.println("111");
e.printStackTrace();
}
把异常的信息输出,利于排除bug
finally块的使用:
:为什么引出了finally机制?
finally就是:提供了一种保护机制。// 这也解释了,为什么说,Java是一种安全的语言。
finally
{
// 这段代码,不管出不出现异常,都会执行
// 一般说,把需要关闭的资源:如:文件,内存等
进行保护性关闭
}
异常处理:
将异常抛给调用者,让调用者处理异常 throws
部分代码:
class Son
{
public void test2() throws Exception
{
FileReader fr=null;
fr=new FileReader("d:\\dd.txt");
}
}
// 在这时,谁调用,这个方法,它就把异常抛给谁。
packet com.test1;
public class Test4
{
public static void main(String[] args)
{
}
class Father
{
}
}
相关文章推荐
- Java-面向对象篇下《二》
- Java-面向对象篇上《二》
- java-基础《一》
- java实现文件重命名的方法
- java-异常篇《三》
- java 图片高质量缩放 (指定宽高)
- Spring中数据库连接池的三种配置(dbcp,c3p0,proxool)(转载)
- Java IO
- win7系统关于jdk软件安装以及配置
- SpringMVC与Struts2的对比
- java.util.ResourceBundle使用详解
- java中变量和方法的内存分析
- SPRING技术内幕-笔记(十一)spring事物处理的设计与实现
- Spring Framework 的一些资料
- Spring Resources
- 个人经常使用的一些Eclipse技巧
- Eclipse创建struts.xml
- 【试水CAS-4.0.3】第01节_CAS服务端搭建及导入源码到MyEclipse
- java获取百度网盘真实下载链接的方法
- Java内存模型