回答編集履歴
3
追記
answer
CHANGED
@@ -8,6 +8,28 @@
|
|
8
8
|
- StartUpクラスに、必要なメソッドを定義する。
|
9
9
|
- 呼び出す際、`MulDiv2.timeNumbers`のように完全な名前で呼び出す。
|
10
10
|
|
11
|
+
問題点2
|
11
12
|
---
|
12
13
|
上記の修正を施しても、まだエラーが出るはずです。
|
13
|
-
インスタンスを経由しないで呼び出したいメソッドは、static指定する必要があります。
|
14
|
+
インスタンスを経由しないで呼び出したいメソッドは、static指定する必要があります。
|
15
|
+
|
16
|
+
問題点3
|
17
|
+
---
|
18
|
+
手元で動かしてみたら、まだエラーが潜んでいました。
|
19
|
+
> ```Java
|
20
|
+
int a;
|
21
|
+
int b;
|
22
|
+
try {
|
23
|
+
a = stdIn.nextInt();
|
24
|
+
b = stdIn.nextInt();
|
25
|
+
}catch(InputMismatchException e) {
|
26
|
+
System.out.println("整数値を入力してください。");
|
27
|
+
}
|
28
|
+
> ```
|
29
|
+
|
30
|
+
例外が発生した場合 a および b が初期化されない恐れがあり、コンパイルできません。
|
31
|
+
入力に成功するまでループするか、失敗したときにmainメソッドから脱出してください。
|
32
|
+
|
33
|
+
問題点(?)4
|
34
|
+
---
|
35
|
+
除算したときに小数点以下が切り捨てられていますが、これは想定通りでしょうか。
|
2
追記
answer
CHANGED
@@ -4,4 +4,10 @@
|
|
4
4
|
メソッド divideNumbersは**型StartUpで未定義**です
|
5
5
|
|
6
6
|
別のクラスに定義したメソッドを、都合よく見に行ってくれるはずがありません。
|
7
|
+
次のどちらかの方法で修正してください。
|
8
|
+
- StartUpクラスに、必要なメソッドを定義する。
|
9
|
+
- 呼び出す際、`MulDiv2.timeNumbers`のように完全な名前で呼び出す。
|
10
|
+
|
11
|
+
---
|
12
|
+
上記の修正を施しても、まだエラーが出るはずです。
|
7
|
-
|
13
|
+
インスタンスを経由しないで呼び出したいメソッドは、static指定する必要があります。
|
1
誤解を与えかねない表現の削除
answer
CHANGED
@@ -3,5 +3,5 @@
|
|
3
3
|
> メソッド timeNumbersは**型StartUpで未定義**です
|
4
4
|
メソッド divideNumbersは**型StartUpで未定義**です
|
5
5
|
|
6
|
-
別のクラスに
|
6
|
+
別のクラスに定義したメソッドを、都合よく見に行ってくれるはずがありません。
|
7
7
|
また、このようにメソッドを用いるときは、静的にすることをお忘れなく。
|