プロが教える店舗&オフィスのセキュリティ対策術

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

gooドクター

A 回答 (4件)

インスタンス変数につける場合がありますね。


逆に、「ローカル変数につける!」 という人も見かけますし…
とりあえず、スコープの違いを分かりやすくする目的であることが多いです。

オープンソースのコードや業務で見るコードでも、Javaではあまり多数派ではないと思います。
よく見かけるのは、JavaScriptなどのアクセス修飾子がない言語です。
「"_"がついてるメンバには直接アクセスしない」などのルールを積極的に使ったりします。
    • good
    • 1

一応参考URLにある通り、Javaの標準では _ は定数にしか利用されません。



>変数名の前にアンダーバー「_」をつけて「_hensu」などどしている変数名がありますが
たぶんC/C++の経験者が書いたソースなのではないでしょうか?

世の中には色々な命名規則がありますので、ご自分に合った規則で頑張ってください。(仕事なら開発標準に従ってくださいね)

参考URL:http://java.sun.com/docs/codeconv/html/CodeConve …
    • good
    • 3

Javaの命名規則では標準的にはアンダスコアは使いませんね。


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

変数の命名規則は沢山あります。


その中でも、
プリミティブ型の変数は先頭2文字を、
参照型の変数は先頭3文字を、
使用しているクラスの略語にするというのは誰でも知ってるかな?
int → itNumber
String → strName  等

これと同じことで、変数は
変数名を見ただけでそれがどんなものであるか
一目瞭然になるように、名前の付け方にルールを作ります。
って、んなこと聞いてない? それくらい知ってる?

んじゃ、本題の命名方法ですが・・・・。
なんでしょうね。仕事で請け負ったプロジェクトの中では、そんな書き方してるのは見たことありませんね。
「hensu_」ならフィールド変数ってのは普通ですが。

てなわけでちょっと調べてみました。
いくつか先頭に「_」をつけている例を見つけたんですが、どうにもローカルルールくさいので、一番ローカルじゃなさそうなやつを参考URLに載せておきました。

と言っても、私はこんな命名規則初めて知りましたが。

参考URL:http://www.asahi-net.or.jp/~dp8t-asm/java/guide/ …
    • good
    • 1

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています

gooドクター

このQ&Aを見た人がよく見るQ&A

人気Q&Aランキング