回答編集履歴

1

具体化

2016/10/07 02:35

投稿

swordone
swordone

スコア20651

test CHANGED
@@ -1,3 +1,25 @@
1
1
  **無名クラス**や**匿名クラス**という機能です。
2
2
 
3
3
  クラスを継承、あるいはインタフェースを実装したクラスをその場で宣言し、必要ならばオーバーライドを行ってクラスとしているものです。
4
+
5
+
6
+
7
+ 今回の場合、
8
+
9
+ ```java
10
+
11
+ class MyRunnable implements Runnable {
12
+
13
+ public void run(){
14
+
15
+ ・・・・・・
16
+
17
+ }
18
+
19
+ }
20
+
21
+ ```
22
+
23
+ というクラスを宣言し(クラス名は適当)、該当箇所で`new MyRunnable()`としているような状態です。
24
+
25
+ しかし、一回しか使わないクラスのためにクラスを宣言するのは煩雑なので、使い切りのクラスとして宣言し、インスタンス化しているのです。クラスの名前を付けないので、無名クラス、匿名クラスと呼ばれているのです。