Person.java
/* 
 * Modeling a person in terms of five properties i.e. First Name, Last Name, Month, Day and Year of Birth 
 */

package people;

public class Person implements PersonSpecification{
    // Instance Variables
    private String firstName;
    private String lastName;
    private int Month, Day, Year;

    //Non-Trivial Constructor

    public Person(String name, int Month, int Day, int Year){
        String firstName = name.substring(0,name.indexOf(" "));
        String lastName = name.substring((name.indexOf(" ")+1), name.length());
        this.firstName = firstName;
        this.lastName = lastName;

        this.Month = Month;
        this.Day = Day;
        this.Year = Year;

    }
    public String toString(){
        return firstName +" " + lastName +","+" born " + Month + "/" + Day + "/" + Year;
    }


    @Override
    public String firstName() {
        return firstName;
    }

    @Override
    public String lastName() {
        return this.lastName;
    }

    @Override
    public int month() {
        return this.Month;
    }

    @Override
    public int day() {
        return this.Day;
    }

    @Override
    public int year() {
        return this.Year;
    }

    @Override
    public String initials() {
        return firstName.substring(0,1).toUpperCase() + lastName.substring(0,1).toUpperCase();
    }

    @Override
    public boolean isBoomer() {
        return (Year > 1945 && Year < 1965);
    }
}