私はAndroid 4に次のコードを持っています:
import org.bouncycastle.jce.exception.ExtCertificateEncodingException;
....
public void method(){
try {
throw new ExtCertificateEncodingException();
} catch(ExtCertificateEncodingException e){
}
}
コンパイルして実行しました。そして、例外がスローされましたが、キャッチされませんでした。それは私を少し混乱させました。e
しかし、調査の結果、 には の代わりにtype com.android.bouncycastle.jce.exception.ExtCertificateEncodingException
(またはそのようなもの) がある ことが判明しましたbouncycastle.jce.exception.ExtCertificateEncodingException
。
そして、私はそれを正確に理解していません。クラスローダーは、私が理解できない魔法を作っていると思います。結局、インポートしたのは:
org.bouncycastle.jce.exception.ExtCertificateEncodingException
です。
- それを理解するのを手伝ってください、説明してください。
- クラスローダーが従わず、ロードしないのはなぜですか? (その行動の私の解釈が正しいかどうかはわかりません)。
- できない理由
import com.android.bouncycastle.jce.exception.ExtCertificateEncodingException
- 正確にそれをキャッチする方法は?私は興味がない
catch(Exception e)