Android Studio爲我提供了一個在[java class]派生自[java class]的匿名類中的[java method] 「拋出CertificateException」以下代碼的一部分。該錯誤增加了:「重寫的方法不會拋出javax.security.cert.CertificateException」如何滿足編譯器?如何解決:在匿名類中的java方法派生自<class>與java方法發生衝突
坦率地說,我對將此理解爲解決方案本身的一般原因同樣感興趣。注意兩條註釋掉的行。我添加了它們來查看它是否會阻止錯誤,希望原因只是沒有代碼實際上拋出指定的異常。不工作。
如果正確的答案可以解釋這個問題的確切原因(我不明白爲什麼這是一個「匿名類」),我將非常感激。這個確切的代碼在很多網上的例子中使用,其中許多似乎以類似的方式使用它(見here)。
X509TrustManager trustManager = new X509TrustManager()
{
@Override
public void checkClientTrusted(java.security.cert.X509Certificate[] chain, String authType) throws CertificateException
{
//if (authType == null)
// throw new javax.security.cert.CertificateException();
}
@Override
public void checkServerTrusted(java.security.cert.X509Certificate[] chain, String authType) throws CertificateException
{
}
@Override
public java.security.cert.X509Certificate[] getAcceptedIssuers()
{
return new java.security.cert.X509Certificate[]{};
}
};
爲什麼我的問題downvoted ??如果你想讓人們改變方式,這將有助於給出一個理由。我不介意改進我的問題,但你怎麼說都沒有提到。 – Alyoshak
認爲這是一個合理的問題。錯誤消息顯然不會導致您查看導入,並且進入編碼的人員應該會感到很舒服,並提出問題。上投了反對票。 – mark