回答編集履歴

9

Button can pushでは「ボタンが押せる」と言う意味になるので、Button can be pushed「ボタンを押すことができる」に変更

2020/02/04 05:19

投稿

BluOxy
BluOxy

スコア2663

test CHANGED
@@ -22,11 +22,11 @@
22
22
 
23
23
 
24
24
 
25
- 例えば、`ToggleButton can push, and FlatButton can push`という関係を明示するときは`ToggleButton`と`FlatButton`クラスに`Pushable`インターフェイスを実装させます。
25
+ 例えば、`ToggleButton can be pushed, and FlatButton can be pushed`という関係を明示するときは`ToggleButton`と`FlatButton`クラスに`Pushable`インターフェイスを実装させます。
26
26
 
27
27
 
28
28
 
29
- もちろん、`Button`という抽象クラスを定義して、`Button can push`という関係を明示するために`Button`に`Pushable`を実装しても構いません。
29
+ もちろん、`Button`という抽象クラスを定義して、`Button can be pushed`という関係を明示するために`Button`に`Pushable`を実装しても構いません。
30
30
 
31
31
 
32
32
 
@@ -38,7 +38,7 @@
38
38
 
39
39
 
40
40
 
41
- `is a button`なオブジェクトまたは、または`can push`なオブジェクトなら特定の処理をしたいというケースがあります。
41
+ `is a button`なオブジェクトまたは、または`can be pushed`なオブジェクトなら特定の処理をしたいというケースがあります。
42
42
 
43
43
  その場合はインターフェイスの型や抽象クラスの型を引数に取り、プログラムを書くことができます。
44
44
 

8

文章の修正

2020/02/04 05:19

投稿

BluOxy
BluOxy

スコア2663

test CHANGED
@@ -136,4 +136,4 @@
136
136
 
137
137
 
138
138
 
139
- 後で`DecorativeButton`を追加したいという時になっても、そこに`Button`クラスを継承させたり、`Pushable`インターフェイスを実装させたりすることですぐにアプリケーションへ組み込むことが出来ます。
139
+ 後で`DecorativeButton`という新しいクラスを追加したいという時になっても、そこに`Button`クラスを継承させたり、`Pushable`インターフェイスを実装させたりすることですぐにアプリケーションへ組み込むことが出来ます。

7

カンマがないのが気になる

2020/02/02 08:02

投稿

BluOxy
BluOxy

スコア2663

test CHANGED
@@ -22,7 +22,7 @@
22
22
 
23
23
 
24
24
 
25
- 例えば、`ToggleButton can push and FlatButton can push`という関係を明示するときは`ToggleButton`と`FlatButton`クラスに`Pushable`インターフェイスを実装させます。
25
+ 例えば、`ToggleButton can push, and FlatButton can push`という関係を明示するときは`ToggleButton`と`FlatButton`クラスに`Pushable`インターフェイスを実装させます。
26
26
 
27
27
 
28
28
 

6

an => a

2020/02/02 07:58

投稿

BluOxy
BluOxy

スコア2663

test CHANGED
@@ -18,7 +18,7 @@
18
18
 
19
19
 
20
20
 
21
- 例えば、`ToggleButton is a Button, and FlatButton is an Button`という関係を明示するときは`ToggleButton`と`FlatButton`クラスに`Button`クラスを継承させます。
21
+ 例えば、`ToggleButton is a Button, and FlatButton is a Button`という関係を明示するときは`ToggleButton`と`FlatButton`クラスに`Button`クラスを継承させます。
22
22
 
23
23
 
24
24
 

5

文章の修正

2020/02/02 07:55

投稿

BluOxy
BluOxy

スコア2663

test CHANGED
@@ -128,7 +128,7 @@
128
128
 
129
129
 
130
130
 
131
- 上記のように書くことで、引数に渡されたインスタンスがそクラスによって違う状態を取得したり、振る舞せたりすることができます。
131
+ 上記のように書くことで、引数に渡されたインスタンスの状態を取得したり、インスタンス毎に違う振る舞いをさせたりすることができます。
132
132
 
133
133
 
134
134
 

4

pushしてないのでpushした

2020/02/02 07:53

投稿

BluOxy
BluOxy

スコア2663

test CHANGED
@@ -58,6 +58,10 @@
58
58
 
59
59
  getButtonIsEnabled(fb);
60
60
 
61
+ pushSomething(tb);
62
+
63
+ pushSomething(fb);
64
+
61
65
  }
62
66
 
63
67
 
@@ -70,7 +74,7 @@
70
74
 
71
75
 
72
76
 
73
- public static void push(Pushable p){
77
+ public static void pushSomething(Pushable p){
74
78
 
75
79
  p.push();
76
80
 

3

表記ゆれ

2020/02/02 07:51

投稿

BluOxy
BluOxy

スコア2663

test CHANGED
@@ -40,7 +40,7 @@
40
40
 
41
41
  `is a button`なオブジェクトまたは、または`can push`なオブジェクトなら特定の処理をしたいというケースがあります。
42
42
 
43
- その場合はインタフェスの型や抽象クラスの型を引数に取り、プログラムを書くことができます。
43
+ その場合はインタフェスの型や抽象クラスの型を引数に取り、プログラムを書くことができます。
44
44
 
45
45
 
46
46
 

2

コードの修正(見た目が少し気になる)

2020/02/02 07:49

投稿

BluOxy
BluOxy

スコア2663

test CHANGED
@@ -86,13 +86,11 @@
86
86
 
87
87
  public abstract class Button implements Pushable{
88
88
 
89
+ private boolean enabled = true;
90
+
89
91
  public abstract void push();
90
92
 
91
93
 
92
-
93
- private boolean enabled = true;
94
-
95
-
96
94
 
97
95
  public boolean getEnabled(){
98
96
 

1

ちょっと文言変えました

2020/02/02 07:49

投稿

BluOxy
BluOxy

スコア2663

test CHANGED
@@ -38,7 +38,7 @@
38
38
 
39
39
 
40
40
 
41
- `is a button`なオブジェクトまたは、または`can push`できるオブジェクトなら特定の処理をしたいというケースがあります。
41
+ `is a button`なオブジェクトまたは、または`can push`オブジェクトなら特定の処理をしたいというケースがあります。
42
42
 
43
43
  その場合はインタフェースの型や抽象クラスの型を引数に取り、プログラムを書くことができます。
44
44
 
@@ -126,8 +126,12 @@
126
126
 
127
127
 
128
128
 
129
- 上記のように書くことで、引数に渡された実際オブジェト(`ToggleButton`や`FlatButton`)ごと持つメンバー利用したり、振る舞わせたりすることができます。
129
+ 上記のように書くことで、引数に渡されたインスタンスがそのクラスよって違う状態取得したり、振る舞わせたりすることができます。
130
130
 
131
131
 
132
132
 
133
+ これが**ポリモーフィズム**(多態性)です。
134
+
135
+
136
+
133
- 後で`Decorative Button`を追加したいという時になっても、そこに`Button`クラスを継承させたり、`Pushable`インターフェイスを実装させたりすることですぐにアプリケーション組み込むことが出来ます。
137
+ 後で`DecorativeButton`を追加したいという時になっても、そこに`Button`クラスを継承させたり、`Pushable`インターフェイスを実装させたりすることですぐにアプリケーション組み込むことが出来ます。