The principles of object-oriented programming

Describe the principles of object-oriented programming and provide a code example in a programming language like Java or Python.