Construtores

Boa tarde,

Tenho uma dúvida!

Sempre que eu declarar um Método construtor tenho que colocar o Método GET e SET também?

Não.
Uma coisa não tem nada a ver com a outra.

1 curtida

Rodrigo,

Me tira outra dúvida, por quando eu crio o meto eu tenho que colocar no argumento um apelido.

ex. public class Pessoa {
private String nome;

public Pessoa ( String nm ){
nome = nm;
}

}

Correto seria:

public Pessoa ( String nome){
    this.nome = nome;
}

O “apelido” também chamado de parâmetro no método é uma variável que quando você chamar o método, terá de ser passada.

Ex:

public void setNome(String nome) {
		this.nome = nome;
 //variavel da classe x variavel do método
	}	
	
	setNome("Luciano");

A forma que eu fiz esta incorreta? Pois estou aprendendo dessa forma.

public Pessoa ( String nm ){
nome = nm;
}

Está correto, existe modos e modos, isso você aprende com o tempo!

Legal, entendi! Vou praticar mais e pesquisar.

Sobre construtores no java:

  • Você pode criar nenhum, um ou mais construtores em cada classe que desenvolva.
  • Se não criar nenhum, o compilador se encarregará de adicionar um default
  • Se criar um, o compilador não insere nenhum.
  • Construtores nunca terão tipos de retorno e sempre terão o mesmo nome da classe.
  • Havendo mais de um construtor, todos devem ter parâmetros diferentes (seja tipo do parâmetro ou quantidade)
  • Preferencialmente, definir nomes de parâmetros seguindo a especificação java beans.
1 curtida

Desculpa Rodrigo sei que não tenho nada a haver com a pergunta porém me intrigou a resposta. Que não esclareceu nada, é interessante que a pergunta tenha sido respondida o que não vi em sua resposta. Porque não respondo porque não sei.

Se é sobre esta resposta

O @Rodrigo_Void está se referindo a padrões de nomes e boas práticas. Nomes de classes, atributos, métodos e classes devem ser, sempre, claros e auto explicativos.
Ele não quis dizer que o nome da variável vai impedir o funcionamento, apenas, que, por razões específicas, o nome dela seria melhor caso não fosse “nm”. O que “nm” diz para ti, caso você não conheça o contexto da questão? Nome? No momento? Nada mais? Namastê? Entendeu?

2 curtidas

darlan,

Então é melhor eu sempre usar da forma que o Rodrigo colocou?

Por exemplo, se vc mandar a IDE gerar os métodos, é neste padrão que o será feito.

Eu não sei como você está estudando, nem que material de apoio usa, mas, sim.
A razão mais importante é que, pense que você tem inúmeros parâmetros, como vai saber qual é qual?

darlan,

Então é melhor eu sempre usar da forma que o Rodrigo colocou?

Serial interessante você utilizar, até por ser uma boa prática, isso no futuro pode fazer a diferença.

Pesquise sobre:

  • Boas praticas em JAVA

Estou fazendo um curso na IMPACTA, mas estou aprendendo de outra forma, da forma que coloquei no post.

Pode ter sido opção de quem está ministrando o curso. Talvez para diferenciar a variável do parâmetro, enfim. É possível usar como você aprendeu? Sim. É correto? Se estamos falando de boas práticas, não.

Nos meus cursos as vezes tbm uso nome do parâmetro diferente pq na fase onde ainda se aprende algoritmo Java é mais fácil entender assim doq ter aprendido que n se pode ter variáveis de nome igual, mas pode ter um parâmetro de nome igual ao de uma var e que na verdade o parâmetro NÃO PRECISA ter o mesmo nome, é só um padrão recomendado e ainda entender o conceito do THIS.

Estava Olhando meu material e observei que a explicação é a mesma que vocês colocaram aqui no post.

Além disso outras pessoas podem dar manutenção no código. Ai você sabe o que é nm, outras pessoas não.