今天给各位分享java抛出异常怎么处理的知识,其中也会对JAVA异常抛出进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!
本文目录一览:
JAVA语言如何进行异常处理?
Java通过面向对象的方法进行异常处理,把各种不同的异常进行分类,并提供了良好的接口。
在Java中,每个异常都是一个对象,它是Throwable类或其子类的实例。当一个方法出现异常后便抛出一个异常对象,该对象中包含有异常信息,调用这个对象的方法可以捕获到这个异常并可以对其进行处理。
Java的异常处理是通过5个关键词来实现的:try、catch、throw、throws和finally。一般情况下是用try来执行一段程序,如果系统会抛出(throw)一个异常对象,可以通过它的类型来捕获(catch)它,或通过总是执行代码块(finally)来处理;try用来指定一块预防所有异常的程序;
catch子句紧跟在try块后面,用来指定你想要捕获的异常的类型;
throw语句用来明确地抛出一个异常;
throws用来声明一个方法可能抛出的各种异常(当然声明异常时允许无病呻吟);
finally为确保一段代码不管发生什么异常状况都要被执行。
Java是一门面向对象编程语言,不仅吸收了C++语言的各种优点,还摒弃了C++里难以理解的多继承、指针等概念,因此Java语言具有功能强大和简单易用两个特征。Java语言作为静态面向对象编程语言的代表,极好地实现了面向对象理论,允许程序员以优雅的思维方式进行复杂的编程
Java是怎样处理异常问题的?
第一:try{}catch{}捕捉异常处理。
try语句里面实现的是主事件流,而catch里面实现的是异常流。
自定义大量的Exception类,只是代表非主事件流的发生的,用来进行那些分支流程的流程控制的。
在异常捕获后返回一个变量,该变量参与正常的业务流程。
第二:业务层处理业务时抛出异常,下次处理。(会影响性能)
返回变量是一种做法;抛出异常是一种做法。
而不是两者都用,返回变量是面向过程的编程方法;抛出异常更OO。
java抛出异常在哪里处理
如果不抛出异常则是在catch块里,抛出则由调用方法的类处理。
为了避免调用的人不知道有异常,才抛出异常的,所以是谁掉用的久在哪里处理。说的对吗
对.
1、throws关键字通常被应用在声明方法时,用来指定可能抛出的异常。多个异常可以使用逗号隔开。当在主函数中调用该方法时,如果发生异常,就会将异常抛给指定异常对象。如下面例子所示:
public
class
Shoot
{
创建类
static
void
pop()
throws
NegativeArraySizeException
{
//定义方法并抛出NegativeArraySizeException异常
int
[]
arr
=
new
int[-3];//创建数组
}
public
static
void
main(String[]
args)
{//主方法
try
{
pop();
//调用pop()方法
}
catch
(NegativeArraySizeException
e)
{
System.out.println("pop()方法抛出的异常");//输出异常信息
}
}
}
2、throw关键字通常用在方法体中,并且抛出一个异常对象。程序在执行到throw语句时立即停止,它后面的语句都不执行。通过throw抛出异常后,如果想在上一级代码中来捕获并处理异常,则需要在抛出异常的方法中使用throws关键字在方法声明中指明要跑出的异常;如果要捕捉throw抛出的异常,则必须使用try—catch语句。举例如下:
class
MyException
extends
Exception
{
//创建自定义异常类
String
message;
//定义String类型变量
public
MyException(String
ErrorMessagr)
{
//父类方法
message
=
ErrorMessagr;
}
public
String
getMessage(){
//覆盖getMessage()方法
return
message;
}
}
public
class
Captor
{
//创建类
static
int
quotient(int
x,int
y)
throws
MyException{//定义方法抛出异常
if(y
0){
//判断参数是否小于0
throw
new
MyException("除数不能是负数");//异常信息
}
return
x/y;//返回值
}
public
static
void
main(String
args[]){
//主方法
try{
//try语句包含可能发生异常的语句
int
result
=
quotient(3,-1);//调用方法quotient()
}catch
(MyException
e)
{
//处理自定义异常
System.out.println(e.getMessage());
//输出异常信息
}
catch
(ArithmeticException
e)
{
//处理ArithmeticException异常
System.out.println("除数不能为0");//输出提示信息
}
catch
(Exception
e)
{
//处理其他异常
System.out.println("程序发生了其他的异常");
//输出提示信息
}
}
}
java抛出异常怎么处理的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于JAVA异常抛出、java抛出异常怎么处理的信息别忘了在本站进行查找喔。