void戻り値の型は、スタックの周りを維持する必要がないことを意味します。実際にはそうですか?voidメソッドでスタックオーバーフローエラーが発生する可能性がありますか?
-2
A
答えて
2
はい可能です。スタックオーバーフローは、コールスタックポインタがスタックに束縛された値を超えた場合に発生します。例えば
void helloWorld() { helloWorld();}
これは、無限再帰を引き起こすため、スタックオーバーフローします。
また、Javaでは末尾再帰の最適化もサポートされていません。
+0
'' void'メソッドは末尾再帰的に作られているようですので、可能であればこれらのエラーは簡単に回避できますか? –
+0
私は参照してください。 Javaは末尾再帰の最適化をサポートしていません。したがって、コンパイラはテールの再帰関数をループに変換しません(たとえば、scalaはそれをサポートしています)。コードを変更する必要があります。 – gkatzioura
関連する問題
- 1. C#メソッドとプロパティ:例外が発生する可能性があります
- 2. PHPログインスクリプト - セッションエラーが発生する可能性があります
- 3. Android:アクセシビリティサービスのgetRootInActiveWindowでANRが発生する可能性がありますか?
- 4. Javascript Ajaxでデッドロックが発生する可能性がありますか?
- 5. fdopen()でメモリリークが発生する可能性がありますか?
- 6. メソッド定義でインラインキーワードを使用するとptoblemsが発生する可能性がありますか?
- 7. 再生中にSSHエラーが発生する可能性があります。
- 8. 静的メソッドにコンテキストを渡すと、Androidでメモリリークが発生する可能性がありますか?
- 9. PostSharpコンパイル時に問題が発生する可能性がありますか?
- 10. Array.spliceによってメモリリークが発生する可能性がありますか?
- 11. rand.Readerを読むとエラーが発生する可能性がありますか?
- 12. UIPickerViewスクロールエラーが発生してクラッシュする可能性がありますか?
- 13. GetStringCriticalのデッドロックが発生する可能性がありますか?
- 14. py.test assertが発生する可能性があり、発生した場合は__
- 15. Expressjでバインディングロスが発生する可能性はありますか?
- 16. トランザクション間でデッドロックが発生する可能性はありますか?
- 17. 同じマシンでUDPエラーが発生する可能性はありますか?
- 18. ラベル「javascript:」で問題が発生する可能性はありますか?
- 19. Javaでメモリリークが発生する可能性はありますか?
- 20. エラーコード(-11):: OpenCLで "cl_build_program_failure"エラーが発生する可能性はありますか?
- 21. スタティックファイルとテンプレートでDjangoバグが発生する可能性があります
- 22. コロンで構文エラーが発生する可能性があります。
- 23. magssoサイトでCSSの問題が発生する可能性があります
- 24. ローカルホストでSSHエラーが発生する可能性があります
- 25. UITableViewでUIViewControllerのメモリリークが発生する可能性があります
- 26. std :: accumulateでオーバーフローが発生する可能性があります
- 27. いつでもエラーが発生する可能性があります
- 28. PHPでセキュリティ上の問題が発生する可能性があります
- 29. OSXエルキャピタンでメモリリークバグが発生する可能性があります
- 30. FindAsyncエクステンションでmongodbデッドロックが発生する可能性があります
メソッドの戻り値の型がvoidであっても、スタック上にスペースを必要としないというわけではありません...すべてのローカルはどうですか?要するに:はい、スタックオーバーフローエラーは完全にvoidメソッドで可能であり、それを実証するのは非常に簡単です。 –
この 'void test(){テスト();}を試してください。 } ' –
voidメソッドは簡単に末尾再帰的に行われるようですので、可能であればこれらのエラーは簡単に回避できますか? –