teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

1

追加

2015/07/23 09:27

投稿

swordone
swordone

スコア20675

answer CHANGED
@@ -15,8 +15,8 @@
15
15
  player1をmurata,player2をyamadaとしてメソッドの処理をします.
16
16
 
17
17
  一方,Player.の方ですが,Playerクラス内でstaticな変数(finalなので定数だが)を宣言しています.
18
- staticはインスタンスに依存しない,クラス唯一の存在なので,
19
- アクセスする際インスタンスを経由する必要がありません.
18
+ staticフィールドはインスタンスに依存しないので,アクセスする際インスタンスを経由する必要がありません.
20
19
  むしろ,インスタンスに紐付かない情報なのにインスタンス経由でアクセスするのは混乱の原因になります.
21
- なので,クラス内のstaticなメンバにアクセスする際は,`クラス名.メンバ`でアクセスする暗黙の決まりになっているのです.
20
+ なので,クラス内のstaticなメンバにアクセスする際は,`クラス名.メンバ`でアクセスする決まりになっているのです.
21
+ このため,staticなフィールドおよびメソッドはそれぞれクラス変数,クラスメソッドとも呼ばれます.
22
22
  試しにEclipseでstaticメンバにインスタンス経由でアクセスしようとすると,エラーにはなりませんが黄線で注意されます.