SkillStorm Interview Question

mostly abstraction and interface question