Polymorphic Greeter

Geoffrey Challen // 2020.9.0

Create a public class named Greeter that provides a single class method named greet. greet should accept a single parameter, a Person to greet, and return a String, the greeting. Depending on what kind of person it is, you should greet them differently:

  • If the person is a Professor with name "Geoff" you should greet them "Hi Professor Geoff"
  • If the person is a Student with name "Friendly" you should greet them "Hey Friendly, you are not alone!"
  • If the person is a Staff, then they will have a String role you can retrieve using getRole. If their role is "advising" and name is "Chuchu" you should greet them "Thanks Chuchu for all your help with advising".

All Persons have a name that you can retrieve using getName. If the person is null or not one of the kinds of people described above, return null. Do not solve this problem using method overloading.