class Main
{
public static void main()
{
Student one=new Student();
one.setName("firstname");
AllStudent all=new AllStudent();
all.add(one);
// Now changing name of student
one.setName("secondname");
// Here I getAll Students
Collection<Student> cs=all.getAll();
java.util.Iterator<Student> itr=cs.iterator();
while(itr.hasNext()){
Student rgc=itr.next();
System.out.println(rgc.getName());
}
}
clas public Student
{
String name;
public void setName(String name)
{
this.name=name;
}
public String getName()
{
return name;
}
}
clas public AllStudent
{
Collection<Student> stds;
public void addAll(Collection<Student> stds)
{
this.stds=stds;
}
public void add(Student std)
{
stds.add(std);
}
public Collection<Student> getAll()
{
return stds;
}
}
}
これで「firstname」が表示されます。参照はクラスに渡された後getUpdatedされていませんか?
しかし、私は "secondname"を取得したいと思います。だから私は何をしなければならないのですか? APIの変更や新しいクラスを作成する場合は?
はのコンストラクタを表示secondnameを得ました学生クラスと全学生クラス。問題はあなたのコンストラクタにあると私に伝えます...もちろん、問題は前述のコードのどこかにあります。 –
これはまったく動作しません。あなたはコレクション 'stds'を決して初期化しません。 – trutheality
'secondname'をどういう意味ですか?あなたは 'クラスの学生 'だけに名前があります。生徒の詳細情報を保存したい場合は、このクラスに追加してください。それで十分だと思います。 – Balanivash