Conceitos Básicos de Orientação a Objetos — Parte 1
Se você está entrando agora no mundo de OO (orientação a objetos), seguem alguns conceitos básicos que você deve saber:
- Abstração Capacidade de nos importar somente com aspectos relevantes em um determinado contexto.
- Classe
São como especificações de um objeto que tem atributos e métodos. Geralmente representam algo abstrato, como um substantivo. Por exemplo: casa, pessoa, veículo.
Uma analogia que podemos fazer é que uma classe corresponde à planta baixa de uma casa.
Exemplo de classe Pessoa, com atributos e métodos
- Objeto
São instâncias da classe, ou seja, uma criação concreta a partir da classe.
Se a classe representa a planta baixa de uma casa, o objeto representa a casa construída. - Herança Conceito que permite que uma classe herde atributos e métodos de uma classe mãe.
Criamos duas extensões da classe Pessoa. Pessoa Física e Pessoa Jurídica herdam todos os atributos e métodos de Pessoa e incluem os seus próprios. Pode-se afirmar que toda Pessoa Física é uma Pessoa, mas nem toda Pessoa é uma Pessoa Física.
Podemos dizer que Pessoa é uma superclasse ou classe mãe. Pessoa Física e Pessoa Jurídica são subclasses ou classes filhas.
Utilizando a herança, podemos evitar repetição de código, centralizando atributos e métodos em classes que fazem sentido estarem relacionadas.
- Interface Contrato entre uma classe e o mundo exterior. Uma interface define métodos que devem ser desenvolvidos (contrato a ser seguido) para quem quiser implementá-la.
- Encapsulamento A ideia do encapsulamento é proteger partes do código, escondendo como funcionam. Desta forma, as mudanças e manutenções futuras ficam facilitadas, pois uma determinada regra não ficará espalhada em vários lugares, mas sim encapsulada em determinado lugar.
- Sobrescrita No exemplo da herança, tanto Pessoa Física quanto Pessoa Jurídica herdam o método pagarImposto(), mas cada tipo de pessoa paga imposto de forma diferente. Dessa forma, as subclasses podem reescrever o método para atender suas necessidades específicas.
- Polimorfismo Capacidade de referenciar um objeto de várias formas. Usando o mesmo exemplo da herança, uma Pessoa pode ser referenciada como uma Pessoa Física ou Pessoa Jurídica. O inverso não é verdadeiro, pois toda Pessoa Jurídica é uma Pessoa, mas nem toda Pessoa é uma Pessoa Jurídica.
Gostou do texto? Continue lendo Conceitos Básicos de Orientação a Objetos — Parte 2. E clique no botão Recommend, logo abaixo.
Fazendo isso, você ajuda esta história a ser encontrada por mais pessoas. Seu comentário também é bem-vindo.
Aqui estão os links que me inspiraram e que podem lhe ajudar a descobrir um pouco mais sobre o assunto.
[Lesson: Object-Oriented Programming Concepts (The Java™ Tutorials > Learning the Java Language)
This beginner Java tutorial describes fundamentals of programming in the Java programming languagedocs.oracle.com](https://docs.oracle.com/javase/tutorial/java/concepts/ "docs.oracle.com/javase/tutorial/java/concepts")
[Introdução à Programação Orientada a Objetos em Java
Nos desenvolvimentos de sistemas, existem alguns fatores importantes como: o entendimento do código, fácil manutenção…devmedia.com.br](http://www.devmedia.com.br/introducao-a-programacao-orientada-a-objetos-em-java/26452 "devmedia.com.br/introducao-a-programacao-or..")