Na parte 2 exploramos um pouco sobre o conceito de classes e atributos. Na verdade existem vários outros conceitos na orientação a objetos que são muito importantes como herança e polimorfismo. Mas passá-los de uma vez só serve para gerar mais confusão A ideia é evoluir aos poucos para que possamos aprender de verdade sem atropelar conceitos.
O objetivo deste blog é construir uma aplicação simples, mas que servirá de base para criar outros sistemas mais complexos. Em um primeiro momento será dividido nas seguintes etapas: classes de negócio, classes de persistência e banco de dados e classes de serviço. Com estas etapas já iremos conseguir incluir, alterar, consultar e excluir mesmo sem ter uma tela. Este isolamento será muito útil, pois poderemos melhorar as telas sem mudar nada da parte básica do sistema.
Em um segunda etapa iremos trabalhar com a construção das telas web executando os serviços construídos na etapa anterior.
Vamos para o que interessa e que todo programa almeja, programar.
Seguem as etapas passo a passo:
1) Vamos reabrir o eclipse instalado executando o arquivo c:\eclipse\eclipse.exe.
2) Aparecerá a tela Workspace Launcher, basta clicar em OK.
3) Vá no Menu -> File -> Java Project
4) Na tela New Java Project preencha o campo "Project Name" com "sistemavideolocadora" sem as aspas.
5) Aparecerá no canto esquerdo na aba Package Explorer uma pasta chama sistemavideolocadora. Clique na seta que a antecede.
6) Clique com o botão direito em cima da pasta src e selecione new -> class.
7) Na tela New Java Class altere o campo "Package" para "br.com.videolocadora.model" sem as aspas.
8) No campo "Name" digite "Cliente" sem as aspas e clique no botão Finish.
9) Aparecerá uma tela com o seguinte texto:
package br.com.videolocadora.model;
public class Cliente {
}
10) O pacote serve para organizar seu programa. Um padrão que eu adoto é br de Brasil, depois com de comercial, depois o nome do sistema e por último o pacote indicando que se trata de classes de negócio. Abaixo temos a declaração da classe Cliente que é pública. Mas a frente explicarei sobre a visibilidade/escopo dentro do JAVA.
11) Vamos criar os atributos da classe Cliente, como explicado na parte 2 são as informações importantes do cliente para uma vídeo locadora, não interessa o tamanho do calçado.
12) Vamos começar com o atributo nome. No padrão adotado no JAVA as classes possuem a primeira letra de cada palavra em maiúsculo, mas os atributos tem a primeira letra de todas em minúsculo. Isto ficará claro na exemplificação. Digite o que está em negrito no texto abaixo:
package br.com.videolocadora.model;
public class Cliente {
private String nome;
}
13) A declaração tem o seguinte formato [ESCOPO] [TIPO] [NOME DO ATRIBUTO];. O escopo das propriedades são na maioria dos casos privados. Isto serve para garantir que a classe cliente tenha total domínio de suas informações. Tem um exemplo clássico que é o seguinte: Para alguém buscar sua informação ela não pega direto a sua carteira, normalmente ela pergunta e você que decide se dará ou não a informação, a mesma ideia acontece na orientação a objetos. O tipo String é um dos mais usados, ela indica que este atributo é alfanumérico ou para facilitar um texto, com acentos, espaços em branco, etc.
14) Vamos criar mais uma informação importante para a vídeo locadora em relação ao cliente, os telefones para encontrar o cliente caso o mesmo se esqueça de devolver o DVD. Para isto digite o que está em negrito no texto abaixo.
package br.com.videolocadora.model;
public class Cliente {
private String nome;
private String telefoneCelular;
private String telefoneResidencial;
private String telefoneComercial;
}
package br.com.videolocadora.model;
public class Cliente {
private String nome;
private String telefoneCelular;
private String telefoneResidencial;
private String telefoneComercial;
private String enderecoResidencial;
private String enderecoComercial;
}
16) Quem conhece Orientação a Objetos deve estar questionando, mas telefone não deveria ser uma outra classe e o endereço também. A resposta é depende do tamanho do seu sistema e objetivo dele. Mas de qualquer forma queremos simplicidade neste primeiro momento, iremos evoluir ao longo do tutorial.
17) Vamos criar agora apenas um identificador do cliente e sua data de nascimento, para que possamos enviar sugestões de filme de acordo com a idade do cliente.
package br.com.videolocadora.model;
public class Cliente {
private Long id;
private String nome;
private String telefoneCelular;
private String telefoneResidencial;
private String telefoneComercial;
private String enderecoResidencial;
private String enderecoComercial;
private Date dataNascimento;
}
19) Salve todas as suas alterações com as teclas Ctrl + S.
20) Uma tela Organize Imports irá aparecer, selecione a linha java.util.Date e clique em Finish.
21) Estamos quase finalizando nossa classe, o último passo é gerar os métodos que permitem acessar e alterar os atributos em cima. O Eclipse tem outro facilitador para isto: Clique com o botão direito do mouse em cima do programa Cliente e selecione a opção Source -> Generate Getters and Setters...;
22) Na tela Generate Getters and Setters clique no botão Select All e depois no botão OK.
23) O programa deve ficar como listado abaixo.
package br.com.videolocadora.model;
import java.util.Date;
public class Cliente {
private Long id;
private String nome;
private String telefoneCelular;
private String telefoneResidencial;
private String telefoneComercial;
private String enderecoResidencial;
private String enderecoComercial;
private Date dataNascimento;
public Long getId() {
return id;
}
public void setId(Long id) {
this.id = id;
}
public String getNome() {
return nome;
}
public void setNome(String nome) {
this.nome = nome;
}
public String getTelefoneCelular() {
return telefoneCelular;
}
public void setTelefoneCelular(String telefoneCelular) {
this.telefoneCelular = telefoneCelular;
}
public String getTelefoneResidencial() {
return telefoneResidencial;
}
public void setTelefoneResidencial(String telefoneResidencial) {
this.telefoneResidencial = telefoneResidencial;
}
public String getTelefoneComercial() {
return telefoneComercial;
}
public void setTelefoneComercial(String telefoneComercial) {
this.telefoneComercial = telefoneComercial;
}
public String getEnderecoResidencial() {
return enderecoResidencial;
}
public void setEnderecoResidencial(String enderecoResidencial) {
this.enderecoResidencial = enderecoResidencial;
}
public String getEnderecoComercial() {
return enderecoComercial;
}
public void setEnderecoComercial(String enderecoComercial) {
this.enderecoComercial = enderecoComercial;
}
public Date getDataNascimento() {
return dataNascimento;
}
public void setDataNascimento(Date dataNascimento) {
this.dataNascimento = dataNascimento;
}
}
24) Finalizamos mais uma etapa importante do nosso tutorial. Até a próxima etapa.
Grato
Pablo
http://javadicasiniciante.blogspot.com.br/2014/01/tutorial-java-parte-iv-criacao-da.html
http://javadicasiniciante.blogspot.com.br/2013/12/tutorial-java-parte-3-criando-classes-e.html
http://javadicasiniciante.blogspot.com.br/2013/12/tutorial-java-parte-2-entendendo.html
http://javadicasiniciante.blogspot.com.br/2013/12/dicas-java-passo-1-ola-mundo.html
http://javadicasiniciante.blogspot.com.br/2014/01/tutorial-java-parte-iv-criacao-da.html
http://javadicasiniciante.blogspot.com.br/2013/12/tutorial-java-parte-3-criando-classes-e.html
http://javadicasiniciante.blogspot.com.br/2013/12/tutorial-java-parte-2-entendendo.html
http://javadicasiniciante.blogspot.com.br/2013/12/dicas-java-passo-1-ola-mundo.html

