Object oriented programming allows software components to be reused. Programmers are allowed to focus on the data in the application and methods that manipulate that data, rather than thinking strictly in terms of procedures. You'll find complete language-independent tutorials on the web. Check out the following links on how Java is an object-oriented language.