If I understood your problem correctly, I would recommend slightly different solution. I don't know what is your level, but I assume you've heard about polymorphism.
I haven't read the full code, but I will do it in such a way:
1. Employee class would superclass(can be abstract)
2. Other classes will be subclasses of Employee class
3. Use polymorphism for example like that:
ArrayList<Employee> list = new ArrayList<Employee>();
Your description looks strange for me. Because you want to have objects of Payable, but as I understood it is an interface.