Tecnologia do Blogger.
RSS

Re: [androidbrasil-dev] Conceito POO - Override/Overload

Obrigado, Clebão.


Quando postei perguntando sobre a annotation, você postou.
Entendi, obrigado pelos esclarecimentos e vou procurar estudar DAO.

On Monday, November 26, 2012 9:33:55 AM UTC-2, Clebão wrote:
Eu aconselho você a estudar sobre DAO (Data access object). No mundo java ate agora eu acho a melhor estrutura para gerenciar persistência.

Já a sua duvida o "Gravar()" por padrão de convenção seria "gravar()" (Obs: Método e variáveis sempre começa com letras minusculas).
Quando a classe filha possui uma método com o mesmo nome da classe pai, ela vai sobrescrever o que a classe pai faz. (Se não me engano nas versões anteriores você é obrigatório anotar o @Override).
Caso você queria executar o método da classe pai você deverá utilizar o super.gravar(); Exemplo.

@Override
public void gravar(){
   super.gravar();
   ...
}

Outra situação que você devera ficar atento é assinatura do método. Quando existe um método gravar(Pedido ped) e o gravar(Produto prod), são coisas diferentes para o java. Neste caso não há Override no método gravar, e sim dois métodos diferentes.


Abraço e sucesso!




Em 26 de novembro de 2012 09:03, Guilherme Bernardi <gui.ber...@gmail.com> escreveu:
Bom dia pessoal.

Estou desenvolvendo um aplicativo utilizando uma classe de persistência. Que seria a super classe e as demais classes herdam ela para persistir os dados no banco. Sou novato em programação POO e estou com dúvidas em um conceito e como fazer isto no Java para que ele interprete da maneira correta, se alguém puder me ajudar ou pelo menos explicar ficarei muito grato.

Seguinte:

Eu tenho uma classe de Persistencia, que possui o método Grava(). Neste método ele seta o banco e verifica um status Enum que eu controlo dentro das classes de atributos o que ele deve fazer, Insert, Update e Delete e executa a ação no banco.

E eu tenho 2 classes, Pedido e PedidoItem que herdam a classe de Persistencia.
Ambas tem o método Grava() também, mas assumem assinaturas diferentes:

- Método Grava() da Classe Pedido é responsável por carregar os dados na persistência e efetuar a sua gravação e já contar os itens chamando o método Grava() da classe PedidoItem para gravar item a item. O detalhe é que ambas as chamadas de Grava() devem carregar os dados e chamar o método da Persistencia. Mas em termos conceituais devo ter feito algo bem errado, gostaria de saber qual é o certo e como funcionaria.

Obrigado desde já.

--
 
 

--
 
 

  • Digg
  • Del.icio.us
  • StumbleUpon
  • Reddit
  • RSS

0 comentários:

Postar um comentário