回答編集履歴
2
記述ミスの訂正 3つー>4つ
answer
CHANGED
@@ -105,7 +105,7 @@
|
|
105
105
|
構文エラーがあります。"}" を挿入して MethodBody を完了してください Price.java /java8_samples/src 行 23 Java 問題
|
106
106
|
```
|
107
107
|
|
108
|
-
あなたが「エラーになりました。」で済ませた事柄は、以下の
|
108
|
+
あなたが「エラーになりました。」で済ませた事柄は、以下の4つを書かないと
|
109
109
|
(回答可能な質問として)普通は相手に伝わりません。
|
110
110
|
|
111
111
|
1.ソースコード(これはやってあります)
|
1
ご質問の変更に対応しました
answer
CHANGED
@@ -8,48 +8,43 @@
|
|
8
8
|
|
9
9
|
|
10
10
|
```Java
|
11
|
-
class Price {
|
12
|
-
int[] price;
|
13
11
|
|
12
|
+
class Price{
|
13
|
+
int[] price;
|
14
|
-
|
14
|
+
Price(int[] p){
|
15
|
-
|
15
|
+
price=p;
|
16
|
-
|
16
|
+
}
|
17
|
+
void getSum(){
|
18
|
+
int sum=0;
|
19
|
+
for(int i=0;i<price. length;i++)
|
20
|
+
sum += price[i];
|
21
|
+
int Sum=sum;
|
22
|
+
System.out.println("合計金額は "+Sum+ " 円です");
|
23
|
+
}
|
24
|
+
public static void main(String[] args){
|
25
|
+
int[] money={150,400,200,100};
|
26
|
+
Price p=new Price(money);
|
27
|
+
p.getSum();
|
17
28
|
|
29
|
+
int[] type={3,2,10,1};
|
30
|
+
Count c= new Count(type);
|
18
|
-
|
31
|
+
c.getNumber();
|
19
|
-
int sum = 0;
|
20
|
-
for (int i = 0; i < price.length; i++)
|
21
|
-
sum += price[i];
|
22
|
-
int Sum = sum;
|
23
|
-
System.out.println("合計金額は " + Sum + " 円です");
|
24
|
-
|
32
|
+
}
|
25
33
|
}
|
26
34
|
|
27
|
-
class Count
|
35
|
+
class Count{
|
28
|
-
|
36
|
+
int[] count;
|
29
|
-
|
37
|
+
Count(int[] c){
|
30
|
-
|
38
|
+
count=c;
|
31
|
-
|
39
|
+
}
|
32
|
-
|
33
|
-
|
40
|
+
void getNumber(){
|
34
|
-
|
41
|
+
int number=0;
|
35
|
-
|
42
|
+
for(int i=0;i<count. length;i++)
|
36
|
-
|
43
|
+
number += count[i];
|
37
|
-
|
44
|
+
int Number=number;
|
38
|
-
|
45
|
+
System.out.println("購入数は "+Number+" 個です");
|
39
|
-
|
46
|
+
}
|
40
47
|
}
|
41
|
-
|
42
|
-
class Main {
|
43
|
-
public static void main(String[] args) {
|
44
|
-
int[] money = { 150, 400, 200, 100 };
|
45
|
-
Price p = new Price(money);
|
46
|
-
p.getSum();
|
47
|
-
|
48
|
-
int[] type = { 3, 2, 10, 1 };
|
49
|
-
Count c = new Count(type);
|
50
|
-
c.getNumber();
|
51
|
-
}
|
52
|
-
}
|
53
48
|
```
|
54
49
|
|
55
50
|
実行結果は以下です。
|
@@ -63,15 +58,11 @@
|
|
63
58
|
エラー(と言う言葉であなたが示そうとした出来事(であろうと私が推測した出来事))の原因と思われる
|
64
59
|
問題点は以下のような点です。
|
65
60
|
|
66
|
-
|
67
|
-
- おそらく、Price に加えて Count というクラスを作りたいのだと推測されますが、クラスの宣言が無く、
|
68
|
-
Price クラスの記述(とコンパイラには解釈される)の中に Countクラスのコンストラクタ(のつもりで書いたのだと推測します)
|
69
|
-
が書かれています。
|
70
|
-
-
|
61
|
+
- getNumber() メソッドの記述が } で閉じていない。
|
71
|
-
コンパイラは型の指定されてないメソッドが記述されていると認識してエラーにしたのだと思います。
|
72
62
|
|
63
|
+
この点を修正しても、いくつものエラーが出ますが、修正の仕方は何種類かあり、それによって出るエラーが変わってくるのでここでは書きません。
|
64
|
+
コーディング意図が不明なのでどのように修正するべきか判断できないからです、上に示した動作例は私の勝手な憶測にすぎません。
|
73
65
|
|
74
|
-
|
75
66
|
補足
|
76
67
|
---
|
77
68
|
|
@@ -79,25 +70,47 @@
|
|
79
70
|
Eclipse で作成したのだと予想します。
|
80
71
|
|
81
72
|
そして、以下のようなコンパイルエラーが出力されているはずです。
|
82
|
-
(コマンドラインでコンパイルしたのなら、
|
83
|
-
作業している画面上に、
|
84
|
-
|
73
|
+
(微妙に環境が違うため、両者でエラーが同じになりません、一例と思ってください)
|
85
74
|
|
86
|
-
|
75
|
+
- コマンドラインの場合
|
87
76
|
```
|
77
|
+
Price.java:25: エラー: 式の開始が不正です
|
88
|
-
|
78
|
+
public static void main(String[] args){
|
79
|
+
^
|
89
|
-
|
80
|
+
Price.java:25: エラー: 式の開始が不正です
|
81
|
+
public static void main(String[] args){
|
82
|
+
^
|
90
|
-
|
83
|
+
Price.java:25: エラー: ';'がありません
|
84
|
+
public static void main(String[] args){
|
85
|
+
^
|
86
|
+
Price.java:25: エラー: '.class'がありません
|
87
|
+
public static void main(String[] args){
|
88
|
+
^
|
89
|
+
Price.java:25: エラー: ';'がありません
|
90
|
+
public static void main(String[] args){
|
91
|
+
^
|
92
|
+
Price.java:34: エラー: 構文解析中にファイルの終わりに移りました
|
93
|
+
}
|
94
|
+
^
|
95
|
+
エラー6個
|
96
|
+
```
|
91
97
|
|
92
|
-
|
98
|
+
- Eclipse の場合
|
93
|
-
|
94
99
|
```
|
100
|
+
記述/説明 リソース パス ロケーション タイプ
|
101
|
+
Number は変数に解決できません Price.java /java8_samples/src 行 23 Java 問題
|
102
|
+
メソッド getSum() は型 Price で未定義です Price.java /java8_samples/src 行 27 Java 問題
|
103
|
+
メソッド main は static として宣言できません。static メソッドは、static またはトップレベル型においてのみ宣言できます Price.java /java8_samples/src 行 24 Java 問題
|
104
|
+
構文エラーがあります。"}" を挿入して ClassBody を完了してください Price.java /java8_samples/src 行 33 Java 問題
|
105
|
+
構文エラーがあります。"}" を挿入して MethodBody を完了してください Price.java /java8_samples/src 行 23 Java 問題
|
106
|
+
```
|
95
107
|
|
96
108
|
あなたが「エラーになりました。」で済ませた事柄は、以下の3つを書かないと
|
97
109
|
(回答可能な質問として)普通は相手に伝わりません。
|
98
110
|
|
99
111
|
1.ソースコード(これはやってあります)
|
100
112
|
2.このコードをコンパイルした(あるいは自動ビルドがオンの状態でEclipseで入力した)こと(あと出来ればコンパイラのバージョンとオプションの内容)
|
113
|
+
(もちろん、コマンドラインでコンパイルしたかEclipseを使ったかそれ以外の方法でコンパイルしたかということも)
|
101
114
|
3.その時にこのようなエラーメッセージが出たこと
|
102
115
|
4.そのエラーメッセージを見て、自分がどう解釈し質問するに至ったか(あるいは、どこがどう理解できなかったか)
|
103
116
|
|