Javaのクラス/メソッド/変数名の最大長はありますか? JLSはそれを言及していないようです。とにかくコードの可読性と保守性の観点からは非常に長い名前が問題になることは知っていますが、好奇心のためだけに制限があります(クラス名はファイルシステムの最大ファイル名の制限によって制限されるかもしれません)。Javaの変数またはメソッドの最大名前長
36
A
答えて
18
申し訳ありません、実際にはJLSの答えが見つかりました: http://java.sun.com/docs/books/jls/third_edition/html/lexical.html#40625 識別子の名前は無制限の長さのようです。あなたがこの方法のためにVMによって課されるサイズの制限を超えた場合Maximum Method Name Length
31
私が間違っていない場合、制限は言語そのものではなく、名前を64kに制限するクラスファイル形式であるため、すべての実際的な意図と目的のために識別子の長さは問題にはなりません。
CONSTANT_Utf8_info {
u1 tag;
u2 length;
u1 bytes[length];
}
クラス名は、ファイルシステムの問題の以上であってもよい、私は同意し、私は」: 具体的には、これが最大の長さを意味すると思わプールで文字列定数の定義は、16ビットです現在サポートされているものがわからない
+3
これは受け入れられた回答になるはずです – Henry
7
:
も(それが私の最初の検索では表示されませんでした、または私は奇妙です質問のタイトルを入力したときも)同様の質問を見つけました は、定数プールのためには長すぎる「... aaaaaaaaaaaaaaaaaaaa」UTF8表現文字列:
Main.java:1:名前が、あなたは(少なくとも私が使っているのjavacのバージョンで)コンパイルエラーを取得します
関連する問題
- 1. DLL内の関数名の最大長
- 2. MongoDB。フィールド名の最大長
- 3. Windowsユーザー名の最大長
- 4. PHPで最大/最大値を持つ変数の名前を取得
- 5. Webメソッドの最大数は?
- 6. 同じ名前のJavaインスタンス変数とメソッド
- 7. MySQLのテーブル名の最大長
- 8. Javaの名前静的メソッド
- 9. javaのメソッドの最大サイズは?
- 10. Facebookの名前の最大長はどれくらいですか?
- 11. 長いテキストフィールドの最大長
- 12. PHPとMYSQLの最大可変長?
- 13. sendtoの最大バッファ長は?
- 14. Androidの文字列変数の最大長
- 15. SteamID64の最小長と最大長
- 16. 長いメソッドのメソッド名
- 17. openIDの最大長
- 18. スカラキューの最大長
- 19. Android:URLの最大長
- 20. UITextViewの最大長
- 21. Java。インスタンス変数の長さ
- 22. MediaPlayer変数の最大数
- 23. オラクルナンバーフォーマットモデル最大長
- 24. iPadアプリ名の最大長はどれくらいですか?
- 25. ストアドプロシージャ名に最大長があるのはなぜですか?
- 26. YACCまたはBisonのアクション変数位置の最大値
- 27. SAS長さが最大長
- 28. メソッド/クラス/変数名を変更するためのJava obfuscatorの提案
- 29. JavaScriptは変数または名前空間の前に "$"を意味します
- 30. URLの最大長(C#の)
これは言語用ですが、クラスファイルの形式はより限定的です。 – Uri
言語がクラスファイルのためにコンパイルされることを考慮して、実際にはかなり驚くべきことです... – Uri
実際には、ばかばかしい長い変数名を実際に作成しようとするとどうなりますか – talg