Eu tenho estudado java por uma apostila e a mesma me instrui a criar as seguintes classes:
class Data {
int dia;
int mes;
int ano;
}
class Funcionario {
//Atributos
private String nome;
private String rg;
private String departamento;
private Data dataEntrada = new Data();
private Data dataSaida = new Data();
private double salario;
private boolean ativo;
após criado essas classes eu fiz o get e set dos atributos nome, rg, departamento, salario, ativo da seguinte forma:
[code] public String getNome(){
return this.nome;
}
public void setNome(String n) {
this.nome = n;
}[/code]
agora eu gostaria de saber como eu faria o Get e Set dos atributos dataEntrada e dataSaida ja que eles vem de uma classa Data que contem 3 atributos!!!
entendo…vou tentar…
vcs tem alguma indicação de apostilas simples para o aprendizado inicial???
estou usando uma que puxei da net da Caelum (pelo q vi é uma empresa q ensina java),porém passei essa dúvida para um conhecido, e apenas por aprendizado o autor da apostila criou a classe data, e soh por isso esse conhecido ja desmereceu a apostila falando da qualidade, pois o java tem tipo de dados para tratar datas!!!
Acho que a melhor forma de começar a aprender Java é aprender Orientação a Objetos. Uma base sólida em OO vai fazer você deslanchar no aprendizado inicial de Java.
Digita Orientação a Objetos no Google e manda bala!
[quote=icefusion]entendo…vou tentar…
vcs tem alguma indicação de apostilas simples para o aprendizado inicial???
estou usando uma que puxei da net da Caelum (pelo q vi é uma empresa q ensina java),porém passei essa dúvida para um conhecido, e apenas por aprendizado o autor da apostila criou a classe data, e soh por isso esse conhecido ja desmereceu a apostila falando da qualidade, pois o java tem tipo de dados para tratar datas!!![/quote]
Mas o objetivo não é trabalhar com datas, e sim aprender conceitos de OO.
[quote=thegoergen][quote=icefusion]tipo…os conceitos eu ja conheço…
de encapsulamento, herança, polimorfismo, o q é uma classe, um atributo, um método…
tem algo a mais para se estudar?!?[/quote]
Bom… estudar não, mas tem muito o que treinar. Você conseguiu entender este exemplo??[/quote]
só a parte do set q naum entendi muito…mas vou fazer alguns testes em casa!!!caso não consiga eu volto ao forum hehe!!!
Olha, a apostila dos kras é muito boa! A melhor forma de você aprender os conceitos é treinando!
A moral dos gets e sets é o encapsulamento! Tente pensar porque alguem faria isso sendo que os modificadores poderiam ser publicos e de facil acesso! Com um tempo você chega na resposta desejavel.
Olha, a apostila dos kras é muito boa! A melhor forma de você aprender os conceitos é treinando!
A moral dos gets e sets é o encapsulamento! Tente pensar porque alguem faria isso sendo que os modificadores poderiam ser publicos e de facil acesso! Com um tempo você chega na resposta desejavel.[/quote]
para a proteção dos dados…e quando ocorrer mudanças na regra de negócio eu só devo mudar em um único local, ou seja na classe…devemos deixar a classe cuidar de seus atributos!!não seria isso?!
sim, esse é o começo de tudo! Primeiro aprimore bem isso!
Daqui algum tempo vai ter que aprender a lidar com as doenças do POJO, VO, TO, BO, JavaBeans e outras novos conceitos que ainda não avalizados por nenhum guruzão da tecnologia! heheh
Olha como é sossegado vincular OO com o código Java.
Os atributos são privados, logo, não é possível acessá-los diretamente a partir de outro local.
Os métodos (no caso getters/setters) são públicos, logo, é possível acessar os atributos a partir destes métodos.
Isto faz com que ao acessar a classe, para conseguir alterar os dados da mesma, é necessário que você acesse um método da classe. Isto é como uma troca de mensagens. Estes métodos podem processar estas mensagems antes de armazená-las. Eles ainda podem responder coisas!
Desta forma você consegue encapsular, envolver, a informação da qual aquela classe é responsável.
Estuda OO com um pouco de diagramas UML (principalmente diagrama de classes e de sequência). Quando você estiver mais iniciado no assunto, vai fazendo uns testes em Java.