Programação orientada a objetos (POO, ou OOP segundo as suas siglas em inglês) é um paradigma de programação baseado no conceito de "objetos", que podem conter dados na forma de campos, também conhecidos como atributos, e códigos, na forma de procedimentos, também conhecidos como métodos.
A Programação Orientada a Objetos (POO) surgiu com a finalidade de facilitar a vida daqueles que trabalham com desenvolvimento de software, pois na POO o difícil não é desenvolver bem um software, mas sim desenvolver um software que satisfaça o cliente, ou seja, garantir que o que será entregue será realmente o que foi ...
A análise OO foca no entendimento dos requisitos, conceitos e operaç˜oes relacionados com o sistema. Enfatiza o que deve ser feito. – um conjunto de diagramas de interaç˜ao, que repre- sentam os processos aos quais o sistema deve dar suporte.
Uma classe que é definida através da herança a partir de outra classe é chamada de classe derivada ou subclasse. Um classe a partir da qual novas classes são derivadas é chamada de classe pai, classe base ou superclasse.
Superclasse é aquela classe que será derivada, é a classe mãe ou base como também é chamada. Subclasse é a classe derivada, é a classe filha que foi herdada de uma superclasse.