次のクラス階層を作成する必要があります。
私はこのように始めました:
public class Student {
private String name;
private int credits;
public Student(String name, int credits) {
this.name = name;
this.credits = credits;
}
public String getName(){
return name;
}
public void setName(String name) {
this.name = name;
}
// ...the same for "credits"...
public String toString(){
return "name: "+this.name+", credits: "+this.credits;
}
public void print(){
System.out.print(this.toString);
}
}
public class DailyStudent extends Student {
private int scholarship;
public DenniStudent(int scholarship) {
this.scholarship = scholarship;
}
public int getScholarship(){
return scholarship;
}
public void setScholarship(int scholarship) {
this.scholarship = scholarship;
}
public String toString(){
return "Scholarship: "+scholarship;
}
}
RemoteStudentというクラスは、DailyStudentクラスとほぼ同じように見えます。
次に、クラスStudentTestを作成する必要があります。ここで、作成したものをテストします。このクラスでは、宣言されたコンストラクター(すべての引数を含む)を使用して、上記の各クラスからインスタンス(オブジェクト)を作成する必要があります。作成されたすべてのオブジェクトに、メソッドtoString()およびprint()を適用する必要があります。
しかし、ここで私は問題に直面しています-クラスStudentTestを設定する方法と、そこに必要なすべてのインスタンスを作成する方法...そして、このメソッドがintのみである場合は、メソッドprint()を使用する方法がわかりません学生クラス。
私は完全なJava初心者ですが、最初の2つの方法は正しいですか?
皆さんの助けと忍耐に感謝します。
編集:StudentTestメソッドの実装:
public class StudentTest {
public static void main(String[] args) {
DailyStudent daily = new DailyStudent(1000);
daily.print(); // this is what I mean
}
}