Java捕获对象错误
下面的代码是方法头和方法体,但我得到了以下错误:Java捕获对象错误,java,try-catch,Java,Try Catch,下面的代码是方法头和方法体,但我得到了以下错误:无法引发object类型的异常异常异常类型必须是Throwable的子类。我正在尝试执行这段代码:catch(Object Object) 公共作废方法15665(Class435 Class435,int i){ 做{ 试一试{ 试一试{ 字节[]为 =新字节[(int)class435.method7563(1085678935)]; int i_3_; for(int i_4_=0;i_4_
无法引发object类型的异常异常异常类型必须是Throwable的子类
。我正在尝试执行这段代码:catch(Object Object)
公共作废方法15665(Class435 Class435,int i){
做{
试一试{
试一试{
字节[]为
=新字节[(int)class435.method7563(1085678935)];
int i_3_;
for(int i_4_=0;i_4_1){
试一试{
类别435.方法7572(-1683167102);
}捕获(异常){
/*空的*/
}
打破
}
如果((类224_sub8.aByteArray8535.length
-类别224_sub8.anInt8536*475822179)
< 2) {
试一试{
类别435.方法7572(-1683167102);
}捕获(异常){
/*空的*/
}
打破
}
int i_6=类别224_子8.方法13737(2071056893);
如果((类224_sub8.aByteArray8535.length
-475822179*class224_sub8.anInt8536)
<6*i_6_){
试一试{
类别435.方法7572(-1683167102);
}捕获(异常){
/*空的*/
}
打破
}
for(int i_7_=0;i_7_
有人知道如何解决这个问题吗?非常感谢 更换
} catch (Object object) {
与
实际上,您不想捕获可丢弃的
,异常
,运行时异常
,或者更具体的类。所有异常和错误都扩展了可丢弃的错误
,只有那些异常和错误可以被抛出和捕获
你能行
try{
throw new Exception();
}catch(Exception e){
// something here
}catch(Throwable t){
// something here
}
在编写多个catch块时,请记住以下几点
- 不能在超类类型之后编写子类类型。i、 e.如果您在
catch(异常e){}
之后编写catch(运行时异常rt){}
,那么您将得到编译器错误,它已经被捕获
您只能捕获可以抛出的内容(是可丢弃的)。因此,当您试图捕获对象时,编译器会发出抱怨(因为它不扩展Throwable)
Throwable
由所有类型的Error
s和Exception
s继承。但是,我们通常不会捕捉到错误
s,因为程序几乎总是无法从中恢复,例如,OutOfMemoryError。因此,不建议使用捕获(可丢弃的t)
使用catch(Exception e)
时,对于运行期间可能抛出的任何异常(选中或未选中),基本上都有一个catch all。使用或不使用泛型catch通常取决于try
block试图做什么。例如,当读取一个文件时,你想处理和响应一个FileNotFoundException
而不是说一个eofeexception
哇,一些吸引人的方法和类的名称是它是反编译的java类文件,以前它被弄糊涂了吗?为什么不Throwable
?如果您想在出现错误时调用该方法(这是一个非常典型的要求),则完全合法。@Mark
} catch (Throwable object) {
try{
throw new Exception();
}catch(Exception e){
// something here
}catch(Throwable t){
// something here
}
catch (Object o) // Error: Object IS-NOT Throwable