Java 同クラスから戻り値なしのメソッドの呼び出しができません。
解決したいこと
Javaで同クラスから戻り値なしのメソッドを呼び出したいのですが、上手く呼び出すことができなくなってしまいました。今までメソッドを呼び出す時は「メソッド名(引数1…);」という形で呼び出せていたのですが、どうしてエラーになってしまうのか分からないため、ご教授いただければ幸いです。
発生している問題・エラー
構文エラーがあります。"... VariableDeclaratorId" を挿入して FormalParameterList を完了してください
- メソッドの戻りの型がありません
該当するソースコード
dispメソッドの呼び出しができません。
package question19;
public class Question19 {
// 犬の情報を管理するメソッドを呼び出し
DogAvatar[] avatars = getDogAvatars();
//画面表示を行うメソッド呼び出し
disp(avatars);
public static DogAvatar[] getDogAvatars() {
// インスタンス生成
DogAvatar[] dogAvatars = new DogAvatar[3];
dogAvatars[0] = new DogAvatar("ハチ","秋田犬",1);
dogAvatars[1] = new DogAvatar("ポチ","柴犬",5);
dogAvatars[2] = new DogAvatar("","雑種",0);
return dogAvatars;
}
/**
* 犬の情報を表示するメソッド
* @param dogAvatars
*/
public static void disp(DogAvatar[] dogAvatars) {
// 拡張for文
for(DogAvatar info: dogAvatars) {
System.out.print(info.getName() + "の情報:種類は");
System.out.print(info.getKind() + "で、年齢は");
System.out.println(info.getAge() + "歳");
return;
}
}
}
DogAvatarクラス
setAgeメソッドの呼び出しができません。
package question19;
/**
* Dogクラスを継承
* 犬の情報を管理するクラス
*/
public class DogAvatar extends Dog {
// 犬の年齢
private Integer age;
// 引数3つのコンストラクタ
public DogAvatar(String name, String kind, Integer age) {
// Dogクラスを継承してるからそこから呼び出す
setName(name);
setKind(kind);
}
// setAgeメソッドの呼び出し
setAge(age);
public void setAge(Integer age) {
this.age = age;
}
public Integer getAge() {
return age;
}
}
Dogクラス(エラーは出ていないので問題ないかと思います)
public class Dog {
private String name;
private String kind;
public Dog() {
//引数なしのコンストラクタ
}
public Dog(String name, String kind) {
// 引数が2つのコンストラクタ
setName(name);
setKind(kind);
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getKind() {
return kind;
}
public void setKind(String kind) {
this.kind = kind;
}
}
自分で試したこと
メソッド名の前にvoidを入れてみましたが上手くいきませんでした。
0