-For the pay() question it's easy, all you have to do is override it.
-As for the StaffMember question, classes don't implement each other, they extend each other. But according to your hierarchy, if I'm reading this right, Employee should extend StaffMember and Executive should extend StaffMember like so:
Code:
public class Firm{
//whatever code here
}
public class Staff extends Firm{
//whatever code here
}
public class StaffMember extends Staff{
//whatever code here
public boolean Payable(){
return true;
}
}
public class Employee extends StaffMember implements Payable{
//whatever code here
//override what is originally in the StaffMember class
public boolean Payable(){
//return false because they are a volunteer
return false;
}
}
public class Executive extends StaffMember implements Payable{
//whatever code here
//no need to override payable because executives are payed
}
I may be wrong on what I inferred what you wanted exactly what you wanted from your question but i hope this at least gets you started.