私はJavaでコードを書いていましたが、不都合なことに、をBaseStation
クラスのコンストラクタとして入力しました。私の驚いたことに、これはコンパイル時のエラーを引き起こさず、プログラムが実行されました。何故ですか?誰かがコンストラクタに戻り値の型を持たせる理由はありますか?コンストラクタで戻り値の型を宣言してもコンパイルエラーは発生しません
4
A
答えて
7
戻り値の型を指定すると、コンストラクタではなくメソッドになります。
2
いいえ、コンパイラは、BasedStation
というメソッドを記述していると考えて、コンストラクタとして解釈しません(クラスの名前と同じ名前のメソッドを持つことはできません) 。
-1
これはJavaのオーバーロードの一種です。また、メソッドのパラメータを変更してオーバーロードすることもできます。
関連する問題
- 1. カスタム戻り値の型宣言
- 2. 警告:宣言は何も宣言していません
- 3. エラーが発生しました。bisonに宣言された型はありません
- 4. ダイナミックは戻り値の型を尊重しません
- 5. 戻り値の型は、関数型CONSTと一致していません
- 6. ASP.NETコンパイルエラーが体を宣言しなければなりません
- 7. Javaエラー - 「無効なメソッド宣言、戻り値の型が必要」
- 8. メソッドの戻り値の型が正しくありません
- 9. .NETで戻り値の型が構造体として宣言されているのはなぜですか?
- 10. 宣言型サービスを参照していない宣言型サービス
- 11. SFINAEは戻り値の型では動作しますが、テンプレートのパラメータとしては使用しません
- 12. スイフト。どのようにプロトコルでインポートライブラリからの戻り値の型でfuncを宣言しますか?
- 13. PythonでSQLite戻り値の型がありません
- 14. 関数宣言の戻り値型でアンパサンドはどのように機能しますか?
- 15. オブジェクトをパラメータとして宣言しても機能しません。
- 16. コードスニペットの戻り値の型を理解できません
- 17. セキュリティアセンブリ宣言は何もしませんか?
- 18. システムコマンド - 戻り値を返しません
- 19. MPI行列の多次元コンパイルエラー:コードで宣言されていません
- 20. インターフェイスは型を宣言できません
- 21. スタックする前にアクティビティを殺すので、アクティビティを呼び戻してもオーバーフローは発生しません
- 22. 型 'System.DateTime'の式は戻り値の型 'System.Object'に使用できません
- 23. AsyncTaskの戻り値の型onPostExecuteメソッドは無効ではありませんか?
- 24. iOSで静的宣言エラーが発生しました
- 25. 関数内で宣言構文エラーが発生しました
- 26. Objective-Cオブジェクト宣言でC++エラーが発生しましたか?
- 27. Qt Creatorのコンパイルエラー ":: swprintfと:: vswprintfが宣言されていません"
- 28. 例外宣言の派生オブジェクト型が予期しないものですか?
- 29. アプリアイコンをクリックしてもonOptionsItemSelected()が発生しません
- 30. libcurlのコンパイルエラーが発生しました
通常の方法になります。 –
なので、クラスと同じ名前を共有するクラスのメソッドを持つことは有効ですか? – nikos
これは完全に合法です。それは本当に悪いスタイルです。 –