2. Quebrando em métodos
● Refatorar o exercicios dos números primos para
que fique mais legivel
3. Analisando o método
● void nomeMetodo(<tipoArg> arg, …)
● <tipoRetorno> nomeMetodo(<tipoArg> arg, …)
● Métodos com tipoRetorno sempre especificam
return no seu corpo.
4. Paradigmas
● Paradigma Procedural: quando estruturamos nosso código
em ações (métodos)
● Paradigma da Orientação a Objetos: quando estuturamos o
código em dados e ações (métodos)
5. Estruturando a informação
● Algumas vezes, por questões de organização e
compreensão, queremos estruturar nossas
informações de modo parecido com o mundo real.
● Estruturamos nossa informação na forma de uma
classe, de forma que declaramos as principais
propriedades de um objeto.
● Exemplo: “PropriedadesCarta”
6. Classe vs Objeto
● Classe é a definição estruturada da composição de
um Objeto.
● Objeto são informações criadas, ou seja,
propriamente instanciadas em memória.
● A variável associada a um objeto não “guarda” o
objeto, ela é apenas uma referencia.
● O “new”, aloca memória para o objeto e retorna a
referência desse objeto (enderaco da memoria).
7. Propriedades + Ações
● Além de propriedades, nossos objetos podem
declarar “ações” especificas através da declaração
de metodos.
● Exemplo: nomeDaCarta, maiorQue.
8. Métodos especiais
● Construtor: tem o mesmo nome da classe e serve
como método de inicialização de um objeto
● toString: metodo especial para representar um
objeto em forma de uma String
● equals, hashCode, wait, notify, notifyAll
9. Exercicios de Sala
● Criar Classe Retangulo, com as propriedades,
base, altura e os metodos perimetro e area
● Criar Classes Banco e Conta e implementar
metodos de sacar, depositar e tranfererir o saldo
10. Modificadores de acesso
● public: atributos e métodos acessíveis em outras
classes.
● private: atributos e métodos acessíveis somente na
mesma classe.
● protected: atributos e métodos acessíveis em
subclasses e classes no mesmo pacote.
● default: atributos e métodos acessíveis em classes
no mesmo pacote.
11. Métodos de acesso
● Quando queremos acessar (escrever ou ler) uma
informacao de uma propriedade privada.
● Getters e Setters
● public void setSaldo(double saldo){...}
● public double getSaldo(){...}
12. Atributos de classe
● Palavra reservada static.
● Não necessita ter a sua classe instanciada para
poder ser usado.
● Métodos estáticos, não tem acesso à referência
this, pois um método estático é chamado através
da Classe e não de um Objeto.
● static tem um “sabor” procedural, que muitas vezes
se faz necessario.