5

可能重复:
在 JNI 代码中抛出异常的最佳方法?

我看到System#arraycopy可能会抛出ArrayStoreException等等IndexOutOfBoundsException
但我也看到System#arraycopy是一个使用native方法,这意味着C代码,对吧?
那么C代码怎么可能抛出这些java异常呢?

4

1 回答 1

3

从本机代码抛出 java 异常没有问题。您可以使用以下代码轻松完成此操作:

jclass cls = env->FindClass("java/lang/ArrayStoreException");
env->ThrowNew(cls, message);
于 2012-10-02T08:04:25.167 回答