【问题标题】:Undeclared exceptions in JNIJNI 中未声明的异常
【发布时间】:2010-11-29 11:41:38
【问题描述】:

如果 JNI dll 抛出 Java 异常,而 java 方法定义没有声明该异常(没有 throws 子句)会发生什么?

代码:

private native void jniDoSomething(int someValue);

【问题讨论】:

    标签: java exception java-native-interface throw


    【解决方案1】:

    无论如何都会抛出异常。 刚刚检查过这个。

    我认为这种行为是因为 throws 关键字无论如何都不会影响本机代码。无法检查本机代码是否抛出适当的异常,甚至在头文件中也没有提及异常。

    【讨论】:

    • Class.newInstance() 方法也存在类似问题,该方法也允许抛出未声明的异常。
    • 是的,我的问题不一样,异常名称错误,原生函数找不到类,根本没有抛出异常。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2023-04-09
    • 2014-08-02
    • 1970-01-01
    • 2017-09-18
    • 1970-01-01
    • 2013-09-24
    • 2014-05-06
    相关资源
    最近更新 更多