32. Write a Java program to create a class called Student with private instance variables student_id, student_name, and grades. Provide public getter and setter methods to access and modify the student_id and student_name variables. However, provide a method called addGrade() that allows adding a grade to the grades variable while performing additional validation.
import java.util.ArrayList;
import java.util.List;
class Student {
private int student_id;
private String student_name;
private List grades;
public Student(int id, String name) {
student_id = id;
student_name = name;
grades = new ArrayList<>();
}
public int getStudentId() {
return student_id;
}
public void setStudentId(int student_id) {
this.student_id = student_id;
}
public String getStudentName() {
return student_name;
}
public void setStudentName(String student_name) {
this.student_name = student_name;
}
public void addGrade(double grade) {
if (grade >= 0.0 && grade <= 100.0) {
grades.add(grade);
System.out.println("Grade added: " + grade);
} else {
System.out.println("Invalid grade. Please enter a grade between 0 and 100.");
}
}
public List getGrades(){
return grades;
}
}
class Main{
public static void main(String[] args) {
Student student = new Student(1, "Alice");
System.out.println("Student ID: " + student.getStudentId());
System.out.println("Student Name: " + student.getStudentName());
System.out.println("Grades: " + student.getGrades());
student.addGrade(85.5);
student.addGrade(92.0);
student.addGrade(-10.0);
student.addGrade(101.0);
student.addGrade(78.0);
System.out.println("\nUpdated Student Details:");
System.out.println("Student ID: " + student.getStudentId());
System.out.println("Student Name: " + student.getStudentName());
System.out.println("Grades: " + student.getGrades());
}
}
OUTPUT
Student ID: 1
Student Name: Alice
Grades: []
Grade added: 85.5
Grade added: 92.0
Invalid grade. Please enter a grade between 0 and 100.
Invalid grade. Please enter a grade between 0 and 100.
Grade added: 78.0
Updated Student Details:
Student ID: 1
Student Name: Alice
Grades: [85.5, 92.0, 78.0]