• ベストアンサー

変数名の付け方

変数名の前にアンダーバー「_」をつけて「_hensu」などどしている変数名がありますが、このアンダーバーはどんな意味があるのでしょうか。 昔からある何かの習慣なのでしょうか。

質問者が選んだベストアンサー

  • ベストアンサー
  • deadlock
  • ベストアンサー率67% (59/87)
回答No.2

インスタンス変数につける場合がありますね。 逆に、「ローカル変数につける!」 という人も見かけますし… とりあえず、スコープの違いを分かりやすくする目的であることが多いです。 オープンソースのコードや業務で見るコードでも、Javaではあまり多数派ではないと思います。 よく見かけるのは、JavaScriptなどのアクセス修飾子がない言語です。 「"_"がついてるメンバには直接アクセスしない」などのルールを積極的に使ったりします。

その他の回答 (3)

  • Bonjin
  • ベストアンサー率43% (418/971)
回答No.4

一応参考URLにある通り、Javaの標準では _ は定数にしか利用されません。 >変数名の前にアンダーバー「_」をつけて「_hensu」などどしている変数名がありますが たぶんC/C++の経験者が書いたソースなのではないでしょうか? 世の中には色々な命名規則がありますので、ご自分に合った規則で頑張ってください。(仕事なら開発標準に従ってくださいね)

参考URL:
http://java.sun.com/docs/codeconv/html/CodeConventions.doc8.html#367
  • rinkun
  • ベストアンサー率44% (706/1571)
回答No.3

Javaの命名規則では標準的にはアンダスコアは使いませんね。 Cではアンダスコアで始まる名前はライブラリで予約、アンダスコア2つで始まる名前は言語処理系で予約というルールがあるので、それと同じような感覚で使っているかもしれませんけど。

回答No.1

変数の命名規則は沢山あります。 その中でも、 プリミティブ型の変数は先頭2文字を、 参照型の変数は先頭3文字を、 使用しているクラスの略語にするというのは誰でも知ってるかな? int → itNumber String → strName  等 これと同じことで、変数は 変数名を見ただけでそれがどんなものであるか 一目瞭然になるように、名前の付け方にルールを作ります。 って、んなこと聞いてない? それくらい知ってる? んじゃ、本題の命名方法ですが・・・・。 なんでしょうね。仕事で請け負ったプロジェクトの中では、そんな書き方してるのは見たことありませんね。 「hensu_」ならフィールド変数ってのは普通ですが。 てなわけでちょっと調べてみました。 いくつか先頭に「_」をつけている例を見つけたんですが、どうにもローカルルールくさいので、一番ローカルじゃなさそうなやつを参考URLに載せておきました。 と言っても、私はこんな命名規則初めて知りましたが。

参考URL:
http://www.asahi-net.or.jp/~dp8t-asm/java/guide/Identifier.html