メールサーバーに接続してすべてのメッセージを取得し、これらのメッセージを配列に返すメソッドがあります。 これは、この(擬似コード)のようになります。値を返すメソッドで "finally"をブロックする
public Message[] getMessages() throws Exception {
try{
//Connection to mail server, getting all messages and putting them to an array
return Message[];
} finally {
CloseConnectionToMailServer(); //I don't need it anymore, I just need messages
}
}
私は「最終的に」ブロックが、これを無効に可能性のある例外に「復帰」命令を置くことができます。 今のままにしておくと、「返品」には至りません。
あなたは私が走った問題を捉えたと思います。どのように私は必要なすべてのメッセージを得ることができますか、これらのメッセージと配列を返すと繊細な( "ベストプラクティス"でも)方法でサーバーへの接続を閉じますか?
ありがとうございます。
return文にはなぜ届かないのですか?例外がない場合、Message []が正常に返されます。 – Pablo
'try'の終了後に' return Message [] 'コールをしないのはなぜですか?メソッドの途中でリターンを埋め込むのではなく、そうした方がはっきりしているはずです。 –
ここに問題が何であるかは本当に分かりません。今のようになぜ「帰ってこない」に達するのだろうか?どうか明らかにしてください。 –