问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

java.lang.reflect.invocationtargetexception和数据库表空间有没有关 ...

发布网友 发布时间:2024-09-30 13:11

我来回答

1个回答

热心网友 时间:2024-11-01 20:09

和数据库表空间没有关系

InvocationTargetException异常由Method.invoke(obj, args...)方法抛出。当被调用的方法的内部抛出了异常而没有被捕获时,将由此异常接收。
示例:
[java] view plain copy print?
package com.zzj.test.reflect;

public class Reflect {
public void run(int i) throws ZeroException {
B b = new B();
b.run(i);
}
}

class B {
public void run(int i) throws ZeroException {
if (i < 0) {
throw new ZeroException("参数不能小于零!");
}
System.out.println("参数:" + i);

}
}

class ZeroException extends Exception {
private static final long serialVersionUID = 1L;

private String detailMessage;

public ZeroException(String detailMessage) {
this.detailMessage = detailMessage;
}

public String getMessage() {
return detailMessage;
}
}
测试:
[java] view plain copy print?
package com.zzj.test.reflect;

import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Method;

public class Test {
public static void main(String[] args) {
try {
Class<?> clazz = Class.forName("com.zzj.test.reflect.Reflect");
Method method = clazz.getMethod("run", int.class);
method.invoke(clazz.newInstance(), -1);
} catch (ClassNotFoundException e) {
e.printStackTrace();
} catch (SecurityException e) {
e.printStackTrace();
} catch (NoSuchMethodException e) {
e.printStackTrace();
} catch (IllegalArgumentException e) {
e.printStackTrace();
} catch (IllegalAccessException e) {
e.printStackTrace();
} catch (InvocationTargetException e) {
System.out.println("此处接收被调用方法内部未被捕获的异常");
e.printStackTrace();
} catch (InstantiationException e) {
e.printStackTrace();
}
}
}
输出:
[plain] view plain copy print?
此处接收被调用方法内部未被捕获的异常
java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at com.zzj.test.reflect.Test.main(Test.java:11)
Caused by: com.zzj.test.reflect.ZeroException: 参数不能小于零!
at com.zzj.test.reflect.B.run(Reflect.java:13)
at com.zzj.test.reflect.Reflect.run(Reflect.java:6)
... 5 more
也可以直接打印目标异常:
[java] view plain copy print?
package com.zzj.test.reflect;

import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Method;

public class Test {
public static void main(String[] args) {
try {
Class<?> clazz = Class.forName("com.zzj.test.reflect.Reflect");
Method method = clazz.getMethod("run", int.class);
method.invoke(clazz.newInstance(), -1);
} catch (ClassNotFoundException e) {
e.printStackTrace();
} catch (SecurityException e) {
e.printStackTrace();
} catch (NoSuchMethodException e) {
e.printStackTrace();
} catch (IllegalArgumentException e) {
e.printStackTrace();
} catch (IllegalAccessException e) {
e.printStackTrace();
} catch (InvocationTargetException e) {
System.out.println("此处接收被调用方法内部未被捕获的异常");
Throwable t = e.getTargetException();// 获取目标异常
t.printStackTrace();
} catch (InstantiationException e) {
e.printStackTrace();
}
}
}
输出:
[plain] view plain copy print?
此处接收被调用方法内部未被捕获的异常
com.zzj.test.reflect.ZeroException: 参数不能小于零!
at com.zzj.test.reflect.B.run(Reflect.java:13)
at com.zzj.test.reflect.Reflect.run(Reflect.java:6)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at com.zzj.test.reflect.Test.main(Test.java:11)
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
啤酒肚能减下去吗 一个礼拜怎么减掉啤酒肚 Win10桌面便签小工具怎么添加?一招轻松搞定! win10好用的桌面便签 手机便签APP哪个好用 桌面便签备忘录怎么添加设置? 郑州科技学院王牌专业排名一览表 跳用英语怎么说你知道该如何正确使用吗? jump基本要点 郑州科技学院视觉传达怎么样 郑州科技学院报的视觉传达专业,进入大学后能转专业么 文字找茬大师摘下口罩怎么过关-文字找茬大师摘下口罩想办法摘下她的口 ... 刚果布到香港经过哪里 CorelDRW查找未转曲的文字 中国护照,第三方国家“几内亚比绍”签证,一个月之内去了2次澳门,请问... 从中国到赤道几内亚 iPhone6s最高支持ios几? 荔枝放两天会不会坏掉 荔枝可以存放两天吗 50毫米无缝钢管4毫米后一吨多少根 重庆零卖钢管货到付款 雷雨天开空调的正确方法 桂林溶洞景点排名,桂林推荐溶洞景区有哪些 桂林哪个岩洞 桂林哪个溶洞好玩 冒险岛测谎仪哪里买 爱因斯坦有没有发明? 爱因斯坦是发明家吗? 步步高9688如何不开机打开USB连接 为什么我的步步高9688开不了机,一直处于开机业面却一动不动? ae有哪些插件 江西省委名声通道 红米note8pro能改装成内置无线充电吗? 要是可以希望得到具体方法 红米note8pro可以无线充电吗 华为指关节截屏功能原理是什么 梦见与别人一起攀高预示着什么 如何给ppt中的图片设置进场效果? 抖音的零钱可以提现么? 我要查一下手机缴费明细 深圳天磁科技有限公司智能充电机模块 华为P8的指关节截屏、识别与指纹识别技术有何不同? 北京智能充电机品牌好吗 智能充电机智能充电机使用设置注意事项 华硕a550c 蓝牙怎找 华硕笔记本a550c有蓝牙功能吗? dota2离线怎么恢复正常-离线恢复正常方法 DOS基本操作命令 华硕a550c怎么使用无线鼠标 华硕A550C插入四节式耳麦还是没法用耳机上的麦、用手机耳机也没法声音... 华硕a550c3500,特卡,是不是坑了?求帮助 如何修改ie的默认级别? 买了一顶MLB的棒球帽太大了怎么能小一些呢?