教学文库网 - 权威文档分享云平台
您的当前位置:首页 > 文库大全 > 资格考试 >

java异常处理的几种方法

来源:网络收集 时间:2026-10-04
导读: try....catch throws fainally 1.用try --catch处理异常 适合处理程序员可以控制和用户输入有误的情况,以起到程序来发顺利进行和避免不必要情况的发生 try{ //如果里面有异常就执行catch里的语句 }catch(Exception e){//exception } 2.用throws处理异常 thr

try....catch throws fainally

1.用try --catch处理异常

适合处理程序员可以控制和用户输入有误的情况,以起到程序来发顺利进行和避免不必要情况的发生


try{

//如果里面有异常就执行catch里的语句

}catch(Exception e){//exception


}



2.用throws处理异常

throws是处理异常的两种方法之一,它的处理方法是将异常抛给上一级处理,如都不能处理,最终抛给虚拟机处理,这个过程我们称为抛异常。这种方法适合比较严重的异常和程序员无法预料或无法完全避免异常发生的情况,以及无法处理的异常。

都是用在方法中


import java.util.*;
class A{
void a() throws Exception //往上抛
{
int a,b,c;
Scanner in=new Scanner(System.in);
a=in.nextInt();
b=in.nextInt();
c=a%b;
System.out.println(c);
}
}



public class Throws {

public static void main(String[] args)//throws Exception 抛到虚拟机
{
// TODO Auto-generated method stub
A aa=new A();
try{
aa.a();//调用A里面的a
}catch(Exception e){
System.out.println("输入有误");
}
System.out.println("顺利进行");
}
}

3.Finally 的用法

Finally语句是起到异常出口的作用,用在try..catch语句的最后,无论是否出现异常(catch中的语句是否被执行),finally中的语句都会被执行,这样可以更好的控制程序的走向。


import java.util.*;
class A{
void a() //throws Exception //往上抛
{
int a,b,c;
Scanner in=new Scanner(System.in);
a=in.nextInt();
b=in.nextInt();
c=a%b;
System.out.println(c);
}
}



public class Throws {

public static void main(String[] args)//throws Exception 抛到虚拟机
{
// TODO Auto-generated method stub
A aa=new A();
try{
aa.a();//调用A里面的a
}catch(Exception e){
System.out.println("输入有误");

}
finally{//无论是否出现异常(catch中的语句是否被执行),finally中的语句都会被执行
System.out.println("顺利进行");
}

}
}



4.equlas方法(1)

java中一般情况下,不可以再用==来比较是否相等的情况,而是要用equals方法来比较,equals方法属于object类并且不是final类型,所以任何类都可以继承并且覆盖该方法。




package zhou.fei;

class B{
private int i;
B(int i){
this.i=i;
}
public boolean equals(B b2){
//两个对象的i进行比较
if(this.i==b2.i)
return true;
else
return false;
}
}

public class Equals1 {

public static void main(String[] args) {
// TODO Auto-generated method stub

B b1=new B(20);
B b2=new B(20);

//System.out.println(b1==b2);
//对象之间不可以再用“==”来进行比较。因为这样比较的对象的内存地址。而不是对象中的具体属性。
System.out.println(b1.equals(b2));
//覆盖后的equals方法比较的不再是两个对象的内存

try....catch throws fainally

地址,而是根据自己的需求来决定。
//在这里比较的是变量i的值,当两个对象的i都等于20.此时两个对象的比较结果返回了true


}

}


5.equals(2)

equals方法在一般情况下都需要覆盖成自己想要的方法。而且配合多态可以实现强大的“比较”功能。可以比较类中的任何数据,可以根据自己的需求来定义两个对象是否相等的条件。


package zhou.fei;

class B{
private int i;
B(int i){
this.i=i;
}
public boolean equals(B b2){
//两个对象的i进行比较
if(this.i==b2.i)
return true;
else
return false;
}
}


class C extends B{
//继承C
private int j;
C(int j){
super(j);
//初始化父类中有参的构造方法
this.j=j;
//初始化 j
}//多态
public boolean equals(B b2){
//让父类的引用指向子类的对象
//两个对象的i进行比较
C c=(C)b2;
if(this.j==c.j)
return true;
else
return false;
}
}

public class Equals1 {

public static void main(String[] args) {
// TODO Auto-generated method stub

B b1=new B(20);
B b2=new B(20);
//System.out.println(b1==b2);
//对象之间不可以再用“==”来进行比较。因为这样比较的对象的内存地址。而不是对象中的具体属性。
System.out.println(b1.equals(b2));
//覆盖后的equals方法比较的不再是两个对象的内存地址,而是根据自
己的需求来决定。
//在这里比较的是变量i的值,当两个对象的i都等于20.此时两个对象的比较结果返回了true
C c1=new C(20);
C c2=new C(21);
System.out.println(c1.equals(c2));
}

}





…… 此处隐藏:965字,全部文档内容请下载后查看。喜欢就下载吧 ……
java异常处理的几种方法.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.jiaowen.net/wenku/92495.html(转载请注明文章来源)
Copyright © 2020-2025 教文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:78024566 邮箱:78024566@qq.com
苏ICP备19068818号-2
Top
× 游客快捷下载通道(下载后可以自由复制和排版)
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150份
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150份
全站内容免费自由复制
注:下载文档有可能出现无法下载或内容有问题,请联系客服协助您处理。
× 常见问题(客服时间:周一到周五 9:30-18:00)