GenSpark interview question

Explain Object Oriented Programming and the pillars