Data Science Dojo interview question

What are the basic fundamentals of Object Oriented Programming? Explain them.