I need to write a class that encapsulates this program It sh
I need to write a class that encapsulates this program. It should supplement the constructor, accessors, and mutators. As well as methods like toString and equals.
public class StudentClient
 {
 public static void main( String [] args )
 {
     Student s1 = new Student( \"Jones\", \"222-88-1111\", 3.7 );
     Student s2 = new Student( \"Smith\", \"333-99-4444\", 3.2 );
     System.out.println( \"The name of student #1 is \" + s1.getName( ) );
     System.out.println( \"The social security number of student #1 is \" + s1.getSsn( ) );
     System.out.println( \"The gpa of student #1 is \" + s1.getGpa( ) );
     System.out.println( \"Student #2 is \" + s2.toString( ) );
    if ( s1.equals( s2 ) )
       System.out.println( \"Original students #1 and #2 are identical\" );
     else
       System.out.println( \"Original students #1 and #2 are different\" );
    s2.setName( \"Jones\" );
     s2.setSsn( \"222-88-1111\" );
     s2.setGpa( 3.7 );
    if ( s1.equals( s2 ) )
       System.out.println( \"Original student #1 and modified student #2 are identical\" );
     else
       System.out.println( \"Original student #1 and modified student #2 are different\" );
}
 }
Solution
Student.java
 public class Student {
    private String name;
    private String ssn;
    private double gpa;
    public Student(String n, String s, double g){
        name = n;
        gpa = g;
        ssn = s;
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public String getSsn() {
        return ssn;
    }
    public void setSsn(String ssn) {
        this.ssn = ssn;
    }
    public double getGpa() {
        return gpa;
    }
    public void setGpa(double gpa) {
        this.gpa = gpa;
    }
    public String toString(){
        return \"name is \"+name+\" ssn is \"+ssn+\" gpa is \"+gpa;
    }
    public boolean equals(Student s){
        if(this.name == s.name && this.ssn == s.ssn){
            return true;
        }
        else{
            return false;
        }
    }
 }
StudentClient.java
public class StudentClient
 {
 public static void main( String [] args )
 {
 Student s1 = new Student( \"Jones\", \"222-88-1111\", 3.7 );
 Student s2 = new Student( \"Smith\", \"333-99-4444\", 3.2 );
 System.out.println( \"The name of student #1 is \" + s1.getName( ) );
 System.out.println( \"The social security number of student #1 is \" + s1.getSsn( ) );
 System.out.println( \"The gpa of student #1 is \" + s1.getGpa( ) );
 System.out.println( \"Student #2 is \" + s2.toString( ) );
 if ( s1.equals( s2 ) )
 System.out.println( \"Original students #1 and #2 are identical\" );
 else
 System.out.println( \"Original students #1 and #2 are different\" );
 s2.setName( \"Jones\" );
 s2.setSsn( \"222-88-1111\" );
 s2.setGpa( 3.7 );
 if ( s1.equals( s2 ) )
 System.out.println( \"Original student #1 and modified student #2 are identical\" );
 else
 System.out.println( \"Original student #1 and modified student #2 are different\" );
 }
 }
Output:
The name of student #1 is Jones
 The social security number of student #1 is 222-88-1111
 The gpa of student #1 is 3.7
 Student #2 is name is Smith ssn is 333-99-4444 gpa is 3.2
 Original students #1 and #2 are different
 Original student #1 and modified student #2 are identical


