Object Oriented Programming 4 Pillars