回答編集履歴

5

間違いの修正

2018/08/18 06:37

投稿

opyon
opyon

スコア1009

test CHANGED
@@ -3,6 +3,12 @@
3
3
  ---
4
4
 
5
5
  追記:[@katoyさん](https://teratail.com/users/katoy#reply)の回答を見て間違いに気づいたので訂正しました。
6
+
7
+
8
+
9
+ public static void を public void にするなど全体の流れを理解していないと動作しないようです。
10
+
11
+ 最終的に[@katoyさん](https://teratail.com/users/katoy#reply)の写経になってしましました。
6
12
 
7
13
 
8
14
 
@@ -121,3 +127,67 @@
121
127
 
122
128
 
123
129
  ```
130
+
131
+ ```java
132
+
133
+ public class SampleAlarmClock implements SampleIAlarm, SampleIClock {
134
+
135
+ public void alarm() {
136
+
137
+ System.out.println("アラームを鳴らす");
138
+
139
+ }
140
+
141
+ public void setAlarm() {
142
+
143
+ System.out.println("アラームをセットする");
144
+
145
+ }
146
+
147
+ public void stopAlarm() {
148
+
149
+ System.out.println("アラームを止める");
150
+
151
+ }
152
+
153
+ public void showTime() {
154
+
155
+ System.out.println("時刻を知る");
156
+
157
+ }
158
+
159
+ public void adjustTime() {
160
+
161
+ System.out.println("時刻を修正する");
162
+
163
+ }
164
+
165
+ }
166
+
167
+ ```
168
+
169
+ ```java
170
+
171
+ public interface SampleIAlarm {
172
+
173
+ public void setAlarm() ;
174
+
175
+ public void alarm() ;
176
+
177
+ public void stopAlarm() ;
178
+
179
+ }
180
+
181
+ ```
182
+
183
+ ```java
184
+
185
+ public interface SampleIClock {
186
+
187
+ public void adjustTime() ;
188
+
189
+ public void showTime() ;
190
+
191
+ }
192
+
193
+ ```

4

間違いの修正

2018/08/18 06:37

投稿

opyon
opyon

スコア1009

test CHANGED
@@ -2,7 +2,11 @@
2
2
 
3
3
  ---
4
4
 
5
+ 追記:[@katoyさん](https://teratail.com/users/katoy#reply)の回答を見て間違いに気づいたので訂正しました。
5
6
 
7
+
8
+
9
+ ---
6
10
 
7
11
  回答が無いようなので自分も自信が無いので確認のため書いてみました。
8
12
 

3

間違いの修正

2018/08/18 05:50

投稿

opyon
opyon

スコア1009

test CHANGED
@@ -56,28 +56,64 @@
56
56
 
57
57
  }
58
58
 
59
+
60
+
59
61
  // アラームとしての処理
60
62
 
61
- public static void funcAlarm(SampleAlarmClock ac) {
63
+ public static void funcAlarm(SampleIAlarm ac) {
62
64
 
63
- ac.setAlarm();
65
+ SampleIAlarm.setAlarm();
64
66
 
65
- ac.alarm();
67
+ SampleIAlarm.alarm();
66
68
 
67
- ac.stopAlarm();
69
+ SampleIAlarm.stopAlarm();
68
70
 
69
71
  }
70
72
 
71
73
  // 時計としての処理
72
74
 
73
- public static void funcClock(SampleAlarmClock ac) {
75
+ public static void funcClock(SampleIClock ac) {
74
76
 
75
- ac.adjustTime();
77
+ SampleIClock.adjustTime();
76
78
 
77
- ac.showTime();
79
+ SampleIClock.showTime();
78
80
 
79
81
  }
80
82
 
81
83
  }
82
84
 
85
+
86
+
87
+ //   //※以下間違いだと思うので訂正し悪い例として残しておきます
88
+
89
+ //   //AlarmClockが変更されるとmain()も修正が必要になる
90
+
91
+
92
+
93
+ // // アラームとしての処理
94
+
95
+ // public static void funcAlarm(SampleAlarmClock ac) {
96
+
97
+ // ac.setAlarm();
98
+
99
+ // ac.alarm();
100
+
101
+ // ac.stopAlarm();
102
+
103
+ // }
104
+
105
+ //
106
+
107
+ // // 時計としての処理
108
+
109
+ // public static void funcClock(SampleAlarmClock ac) {
110
+
111
+ // ac.adjustTime();
112
+
113
+ // ac.showTime();
114
+
115
+ // }
116
+
117
+
118
+
83
119
  ```

2

URL追加

2018/08/18 05:47

投稿

opyon
opyon

スコア1009

test CHANGED
@@ -1,3 +1,9 @@
1
+ 参考質問:[インターフェースって何のメリットがあるんですか?](https://teratail.com/questions/70213)
2
+
3
+ ---
4
+
5
+
6
+
1
7
  回答が無いようなので自分も自信が無いので確認のため書いてみました。
2
8
 
3
9
  添削していただけるとありがたいです。

1

URL追加

2018/08/17 19:35

投稿

opyon
opyon

スコア1009

test CHANGED
File without changes