Programção orientada a objetos
É utilizada para a definição de entidades do mundo real. Sendo onde são criadas as classes. Essas entidades são consideradas tudo que é real, tendo como consideração as suas características e ações, veja na Figura 1 como funciona.
Figura 1: Abstrações do mundo real
Uma classe é reconhecida quando tem a palavra reservada “class”. Na Listagem 1 é mostrada a classe “Conta” com seus atributos (características) e métodos (ações). Para saber mais sobre métodos acesse o link: http://www.devmedia.com.br/trabalhando-com-metodos-em-java/25917.
Listagem 1: Exemplo de abstração da classe Conta. public class Conta { int numero; double saldo; double limite;
void depositar(double valor){ this.saldo += valor; }
void sacar(double valor){ this.saldo -= valor; } void imprimeExtrato(){ System.out.println("Saldo: "+this.saldo); }
}
2º pilar - Encapsulamento
É a técnica utilizada para esconder uma ideia, ou seja, não expôr detalhes internos para o usuário, tornando partes do sistema mais independentes possível. Por exemplo, quando um controle remoto estraga apenas é trocado ou consertado o controle e não a televisão inteira. Nesse exemplo do controle remoto, acontece a forma clássica de encapsulamento, pois quando o usuário muda de canal não se sabe que programação acontece entre a televisão e o controle para efetuar tal ação.
Como um exemplo mais técnico podemos descrever o que acontece em um sistema de vendas, aonde temos cadastros de funcionários, usuários, gerentes, clientes, produtos entre outros. Se por acaso acontecer um problema na parte do usuário é somente nesse setor que será realizada a manutenção não afetando os demais.
Em um processo de encapsulamento os atributos das classes são do tipo private. Para acessar esses tipos de modificadores, é necessário criar métodos setters e getters.
Por entendimento os métodos setters servem para alterar a informação de uma propriedade de um objeto. E os métodos