- ベストアンサー
用語の意味の違いを教えてください。
JAVAを勉強してまして、同じような意味であろう用語がたくさん出てきて頭が混乱してしまいました。 ・クラス変数 ・メンバ変数 ・インスタンス変数 ・プロパティ ・フィールド ・アトリビュート これらの用語の意味の違い、使い分けを教えていただけないでしょうか? 個人的な解釈: ・変数の総称? ・メソッドは含まない? ・定数は含まない?
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
> ・クラス変数 Javaではクラス内のstaticな変数のことをクラス変数と呼びます。 > ・メンバ変数 > ・フィールド クラス内(ただしコンストラクタやメソッドの外)の変数のことです。 Javaではstaticか非staticかで呼び名が変わりますが、それらを 区別せずに呼ぶ場合にはこれらの用語を使用します。 > ・インスタンス変数 クラス内(ただしコンストラクタやメソッドの外)で定義されたstatic ではない変数のことです。 > ・プロパティ > ・アトリビュート 概念的にはインスタンス変数のことです。広義にはクラス変数を 含むかもしれません。 Javaの場合、プロパティやアトリビュートという言葉はプログラム 製作時にはあまり使用せず、一般的に設計段階で使用する用語です。
その他の回答 (2)
- choconamacream
- ベストアンサー率44% (152/338)
・アトリビュート[attribute] htmlやxmlなどのタグ内で使用される「属性」のことですね。J2EEでも、JSPやカスタムタグなどを使用する場合には、頻繁に出てきます。 ・プロパティ[property] JavaBeansで使用される特別なフィールドのことです。privateで全て宣言されているため、このフィールドの操作には、publicなアクセッサメソッド(getterメソッドやsetterメソッド)を利用します。Bean自体は、J2SEの範囲内なのですが、実際にはこちらもJ2EEにて利用されることが多いです。
お礼
回答ありがとうございました。 なるほど。JSPとかJavaBeansでの用語だったのですね。 Javaと同時にJSPなども勉強するような状況だったので その辺りは知りませんでした。
- Noriwo003
- ベストアンサー率61% (8/13)
まずはクラス変数とインスタンス変数の違いから ある銀行口座を共有するA君、B君、C君がいました 口座には10万円あったのですが、それぞれが1万円ずつ引き落としたので残高は7万円になりました。 口座:7万円 A君の財布:1万円 B君の財布:1万円 C君の財布:1万円 A君は使う予定がなかったので口座にお金を戻しました B君は5千円の商品を買いました。 C君は3万円の商品がほしかったので2万円引き落としました。 口座:6万円 A君の財布:0円 B君の財布:5千円 C君の財布:3万円 クラス変数=口座 インスタンス変数=A君、B君、C君の財布 となり、3人のうち誰かが口座からお金を引き落とすと残高が変わりますが、A君が自分の財布からお金を出しても他の2人の財布の中身は変化しません。 フィールドはこの例で言うと口座の残高や財布の中身です。(メソッドは入金、出金) プロパティとアトリビュートについては、JAVAの説明で見たことはない(JSPやサーブレットにはあります)のでわかりません。
お礼
回答ありがとうございます。 例のおかげでイメージがつかめました。
お礼
回答ありがとうございます。