//
// Employee2.java 
// Abstract superclass for employee payroll system
// implementing the Payable interface
//
// Nadeem Abdul Hamid (based on Deitel & Deitel, Java How To Program)
// CSC 121 - Berry College
//

public abstract class Employee2 implements Payable {

    private String fullName;
    private String socialSecurityNumber;

    // two-argument constructor
    public Employee2( String name, String ssn ) {
        setName( name );
        setSSN( ssn );
    }

    // set full name
    public void setName( String name ) { fullName = name; }

    // return full name
    public String getName() { return fullName; }

    // set social security number
    public void setSSN( String ssn ) { socialSecurityNumber = ssn; }

    // return social security number
    public String getSSN() { return socialSecurityNumber; }

    // return String representation of Employee object
    public String toString() {
        return getName() + "\n" + "social security number: " + getSSN();
    }

    // do not implement the Payable method getPaymentAmount here so this
    // class must be declared abstract    

} // end abstract class Employee