Bom eu estou tendo muito dificuldade de aprender POO.
Sei que isso num é nada,mas é o máximo que eu estou conseguindo compreender no momento.
Vê se ta certo e o que mais da para implementar.
package test.com.br;
public class Carro {
private String dono;
private String cor;
private String modelo;
private int ano;
public String getDono() {
return this.dono;
}
public String getCor() {
return cor;
}
public String getmodelo() {
return modelo;
}
public int getAno() {
return ano;
}
public void setDono(String novoDono) {
this.dono = novoDono;
}
public void setCor(String novaCor) {
this.cor = novaCor;
}
public void setmodelo(String novoModelo) {
this.modelo = novoModelo;
}
public void setAno(int ano) {
this.ano = ano;
}
}
public class CarroTeste {
public static void main(String[] args) {
Carro carro1 = new Carro();
carro1.setDono("Gabriel");
carro1.setCor("Vermelho");
carro1.setmodelo("fiat");
carro1.setAno(2010);
System.out.println(carro1.getDono());
System.out.println(carro1.getCor());
System.out.println(carro1.getmodelo());
System.out.println(carro1.getAno());
}
}
Outra duvida alguém sabe do que preciso para compreender esse emulador de um jogo Chamado WYD?
Eu jogo esse jogo e queria criar meu servidor com base nesse emulador que um cara traduziu do C# para o Java. http://pastebin.com/bqhHcwLa
Cara ja joguei mt esse jogo, por uns 2 anos, e te falo criei meu server , fiz mts ediçoes mas digo pra vc achu mais facil vc editar o que vc quer que seus npcs seus mapas fazem na propria linguagem do jogo do que em java, pois tudo que se precisa editar la ja tem pronto ou e so ler algum tutorial .
abçs qqr coisa so pergunta.
Voce podia colocar alguns atributos como
int ano;
double velocidadeMax;
mts outras infinidades de atributos, podia usa alguns metodos get, set para alterar o carro a cor algo do tipo,
podia cria um array como varios modelos de carros, e so seria ruim saber as posiçoes que chamar do array,
tem mts coisa basicas legais de fazer q e o que faço em casa pra treina a sintaxe, e treina os conceitos .
Além das apostilas da Caelum (www.caelum.com.br) e da K19 (http://www.k19.com.br) também ouço falar muito bem das vídeo aulas da Universidade XTI, no youtube. Destes, só tive tempo até agora de ver o material da Caelum, que tem me ajudado bastante.
parabéns pela iniciativa. Não deixe de ler e praticar MUITO. Os colegas citaram boas fontes acima. Acrescento também o livro “Java - Como Programar Edição 8”. Vale muito a pena!
Sobre o teu código: o principal (e pra começar) é incluir métodos getters e setters. Sabe do que se trata? São métodos de acesso aos atributos do teu objeto (no caso, objetos do tipo Carro). Vamos por a mão na massa! Por exemplo: crie dois métodos, getCor() e setCor(String novaCor).
public String getCor() {
return this.cor;
}
public void setCor(String novaCor) {
this.cor = novaCor;
}
Ou seja, sempre que quiseres alterar a cor de um carro, farás o seguinte:
carro1.setCor("Amarelo Queimado");
… e se quiseres obter a cor de um carro:
carro1.getCor();
Concluindo: estes métodos são de extrema importância e serão responsáveis pela comunicação entre objetos do teu sistema.
Sugiro que acrescente estes dois métodos na tua classe Carro, implemente os getters/setters dos outros atributos e poste aqui o código como ficou. Vamos incrementando juntos e aos poucos!
parabéns pela iniciativa. Não deixe de ler e praticar MUITO. Os colegas citaram boas fontes acima. Acrescento também o livro “Java - Como Programar Edição 8”. Vale muito a pena!
Sobre o teu código: o principal (e pra começar) é incluir métodos getters e setters. Sabe do que se trata? São métodos de acesso aos atributos do teu objeto (no caso, objetos do tipo Carro). Vamos por a mão na massa! Por exemplo: crie dois métodos, getCor() e setCor(String novaCor).
public String getCor() {
return this.cor;
}
public void setCor(String novaCor) {
this.cor = novaCor;
}
Ou seja, sempre que quiseres alterar a cor de um carro, farás o seguinte:
carro1.setCor("Amarelo Queimado");
… e se quiseres obter a cor de um carro:
carro1.getCor();
Concluindo: estes métodos são de extrema importância e serão responsáveis pela comunicação entre objetos do teu sistema.
Sugiro que acrescente estes dois métodos na tua classe Carro, implemente os getters/setters dos outros atributos e poste aqui o código como ficou. Vamos incrementando juntos e aos poucos! [/quote]
só complementando o que o lucasn000 disse, de nada adianta vc criar seus métodos getter e setters
se vc não criar seus atributos como privados, somente assim terá utilidade criar os métodos
getter e setters, que é a proteção dos dados contidos nos atributos, que somente serão acessados
diretamente pela própria classe que possui eles, sendo que não haverá acesso externo diretamente
apenas pelos métodos criados. Isso é um dos princípios do encapsulamento.
[quote=gusthavosouza]Cara ja joguei mt esse jogo, por uns 2 anos, e te falo criei meu server , fiz mts ediçoes mas digo pra vc achu mais facil vc editar o que vc quer que seus npcs seus mapas fazem na propria linguagem do jogo do que em java, pois tudo que se precisa editar la ja tem pronto ou e so ler algum tutorial .
abçs qqr coisa so pergunta.
Voce podia colocar alguns atributos como
int ano;
double velocidadeMax;
mts outras infinidades de atributos, podia usa alguns metodos get, set para alterar o carro a cor algo do tipo,
podia cria um array como varios modelos de carros, e so seria ruim saber as posiçoes que chamar do array,
tem mts coisa basicas legais de fazer q e o que faço em casa pra treina a sintaxe, e treina os conceitos .
[/quote]
Sim mais as releases tem muito crash e bugs,e eu não sei nada de C/C++ que é
a linguagem usada nas sources.
E vlw galera vou dar mais uma estudada aqui e em breve posto mais resultados.
Exato, Ruteski. Muito bom! Eu iria comentar sobre os atributos em um segundo momento. Já que tu levantou a questão, vamos propor um desafio ao kinaouro.
kinaouro,
Faça estas correções que comentamos:
Adição dos métodos getters/setters;
Adição de privacidade nos atributos da classe (private nos atributos);
Melhorar identação do código.
Assim que terminar, coloque aqui. Vamos te ajudando a incrementar aos poucos!
isso mesmo kinaouro, faz todas as modificações propostas aqui e posta e vamos ajudando e aumentando o nível de dificuldade e complexidade do
sistema e programação, assim iremos gradativamente aumentando o nível do conhecimento passado a vc, isso se o lucasn000 estiver de acordo e vc tb.
[quote=Ruteski]isso mesmo kinaouro, faz todas as modificações propostas aqui e posta e vamos ajudando e aumentando o nível de dificuldade e complexidade do
sistema e programação, assim iremos gradativamente aumentando o nível do conhecimento passado a vc, isso se o lucasn000 estiver de acordo e vc tb.[/quote]
[quote=lucasn000][quote=Ruteski]isso mesmo kinaouro, faz todas as modificações propostas aqui e posta e vamos ajudando e aumentando o nível de dificuldade e complexidade do
sistema e programação, assim iremos gradativamente aumentando o nível do conhecimento passado a vc, isso se o lucasn000 estiver de acordo e vc tb.[/quote]
De (muito) acordo. Boa sorte, kinaouro! [/quote]
challenge accepted.
Vê se fico certo agora,tentei fazer como vocês falaram.
Desculpa pela demora mais eu estava no curso.
E uma duvida sempre tem que usar get e set?
Acabei de ver isso no blog do caelum “Como não aprender Java e Orientação a Objetos: getters e setters”
Outra duvida,como faço para colocar um atributo de velocidade
no código,eu não intendi muito bem na apostila.
Adição de privacidade nos atributos da classe (private nos atributos); [ok]
Melhorar identação do código. [ok]
Sobre o artigo da Caelum:
Concordo. Não agrega valor implementar métodos que não serão utilizados. O exemplo que ele utilizou é muito bom: uma conta bancária não precisa de um método setSaldo. O saldo é modificado via métodos deposita() e saca(). Entende? Porém, essas peculiaridades vamos deixando pra mais adiante… ok? (De qualquer maneira, é boa prática já ir cuidando sobre a real utilidado dos métodos… vá cuidando!). Conclusão: getters/setters são de extrema importância, porém só devem ser implementados se forem realmente necessários.
Gostei das tuas alterações, apenas uma observação para as linhas 17 e 34 da classe “Carro”: trocar nome dos métodos para “getModelo” e “setModelo”, respectivamente.
A segunda parte do desafio é:
Adicionar um método “toString()” na classe “Carro”. Sabe do que se trata?
O atributo “dono” da classe “Carro” não deve ser mais do tipo String. Deve ser do tipo “Pessoa”;
Implementar a classe “Pessoa”, com seus atributos privados (por enquanto nome [String], idade [int] e sexo[char: M/F]), getters/setters e método toString();