回答編集履歴
1
追加
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メンバにインスタンス経由でアクセスしようとすると,エラーにはなりませんが黄線で注意されます.
|