現在、私はHumane32という作業クラスを持っています。クラスFysikere42をこのクラスで拡張したいのですが、人間には2つの引数、年齢と名前、Fysikere42に1つあります。 Humane32クラスは、現在、このように探しています:1つのクラスを別のクラスに拡張しようとしています
import java.util.List;
import java.util.Arrays;
import java.util.Random;
import java.util.ArrayList;
public class Humane32{
public static class Human{
private static final List<String> names = Arrays.asList("Rutger","Oscar","Aram","Noak","Hilda","Dahl");
public Random rand=new Random();
public String name;
public int age;
public Human(int age, String name){
this.age=age;
this.name=name;
}
public Human(){
this.age=rand.nextInt(101);
this.name=names.get(rand.nextInt(names.size()));
}
public String getName(){
return this.name;
}
public int getAge(){
return this.age;
}
public String toString(){
return "åldern är:"+this.age+"\n"+"namnet är:"+this.name;
}
}
public static void main(String[] args){
ArrayList<Human> humaner=new ArrayList<Human>();
int q;
for (q=0;q<=15;q++){
humaner.add(new Human());
System.out.println(humaner.get(q).toString());
}
}
}
そして、私の新しいクラスは、現在、このように探しています:
import java.util.List;
import java.util.Arrays;
import java.util.Random;
import java.util.ArrayList;
public class Fysikere42 extends Humane32{
public static class Fysikerere42{
public int year;
public Fysikere42(int age, String name,int year){
this.age=age;
this.name=name;
this.year=year;
}
public int getYear(){
return this.year;
}
}
public static void main(String[] args){
System.out.println("hej");
}
}
しかし、私は必要なエラーメッセージ、「無効なメソッドの宣言、戻り値の型を取得しています"どこが間違っていたのですか?
あなたは、コードのどの行でそれを得ていますか?あなたは 'Fysikerere42'と' Fysikere42'の両方を持っています。あなたは前者の中に後者のコンストラクタを持っています。あなたがここまで来たことを明確にしてください。 – EJP
ネストされたクラス 'Fysikerere42'は' public Fysikerere42'ではなく 'public Fysikere42'でコンストラクタを宣言しようとしています。 – khelwood
public fysikere42(int age ....) –