解答例 - j2.lesson09.Student

package j2.lesson09;

/**
 * 課題2203で使用されるクラス.
 * 学生の学籍番号、名前、得点を管理する。
 @author arakawa
 @version $Id: Student_java.rps,v 1.1 2006/03/06 12:56:15 java2005 Exp $
 */
public class Student {

    private final String id;
    private final String name;
    private final int score;
    
    /**
     * 学生インスタンスを作成する。
     @param id この学生の学籍番号
     @param name この学生の名前
     @param score この学生の得点
     */
    public Student(String id, String name, int score) {
        super();
        this.id = id;
        this.name = name;
        this.score = score;
    }

    /**
     * この学生の学籍番号を取得する。
     @return この学生の学籍番号
     */
    public String getId() {
        return this.id;
    }

    /**
     * この学生の名前を取得する。
     @return この学生の名前
     */
    public String getName() {
        return this.name;
    }

    /**
     * この学生の得点を取得する。
     @return この学生の得点
     */
    public int getScore() {
        return this.score;
    }

    /**
     * この学生の成績を取得する。
     @return この学生の成績
     */
    public char getGrade() {
        if (this.score >= 80) {
            return 'A';
        }
        else if (this.score >= 70) {
            return 'B';
        }
        else if (this.score >= 60) {
            return 'C';
        }
        else {
            return 'D';
        }
    }

    /**
     * この学生の文字列表現を返す。
     @return この学生の文字列表現
     */
    public String toString() {
        return "id=" + getId() ", name=" + getName() +
               ", score=" + getScore() ", grade=" + getGrade();
    }
}