Person.java
1    /* 
2     * Class to model a person in terms of five properties, first name and last name(String values) 
3     * month, day, year of birth (int values) 
4     */
5    package people;
6    
7    public class Person implements PersonSpecification {
8        // Instance variables
9        private String firstName;
10       private String lastName;
11       private int month;
12       private int day;
13       private int year;
14   
15       // constructor
16       public Person(String name, int month, int day, int year){
17           int space = name.indexOf(" ");
18           String firstName = name.substring(0,space);
19           String lastName = name.substring(space+1);
20           this.firstName= firstName;
21           this.lastName= lastName;
22           this.month= month;
23           this.day= day;
24           this.year= year;
25       }
26   
27       //methods
28   
29       @Override
30       public String toString() {
31           String representation = firstName + " " + lastName + ", born " + month + "/" + day +"/"+year;
32           return representation;
33       }
34   
35       @Override
36       public String fistName() {
37           return firstName;
38       }
39   
40       @Override
41       public String lastName() {
42           return lastName;
43       }
44   
45       @Override
46       public int month() {
47           return month;
48       }
49   
50       @Override
51       public int day() {
52           return day;
53       }
54   
55       @Override
56       public int year() {
57           return year;
58       }
59   
60       @Override
61       public String initials() {
62           String initials= firstName.substring(0,1) + lastName.substring(0,1);
63           return initials.toUpperCase();
64       }
65   
66       @Override
67       public boolean isBoomer() {
68           boolean boomer = (year>=1945 && year<=1964);
69           return boomer;
70       }
71   }
72