olá amigos !
tenho uma pergunta bem básica, pra que serve a passagem de parametro , eu faço mas não sei pq.
alguem tem uma definição mas clara ?
tipo
public void teste ( String x, int y){
}
vlw pessoal
olá amigos !
tenho uma pergunta bem básica, pra que serve a passagem de parametro , eu faço mas não sei pq.
alguem tem uma definição mas clara ?
tipo
public void teste ( String x, int y){
}
vlw pessoal
Os parâmetros de uma função são os dados externos necessários para a execução das instruções desta.
Basicamente isso 
public void mostraMensagem(String msg){
System.out.println(“Mensagem abaixo:”);
System.out.println( msg );
}
uso
mostraMensagem(“dsdklfjasdlhjasdlfkasdljsdhlfkjsd”);
Exemplo simples demais, podia ser qualquer outra coisa: Se você escreve um código que soma dois números, e depois quer fazer uso dessa soma em várias outras classes, o que você faz, copia e cola o código em todas as classes? Não, você modulariza esse código em um método, para ser acessado por outras classes, e nesse caso, você precisa de parâmetros para realizar aquilo que o método se propõe, que são dois números para somar.
public int soma(int a, int b) { //alguma implementação
}
então
mas pq da passagem de parametro no gets e sets
entãomas pq da passagem de parametro no gets e sets
Para o seu atributo não ser acessado diretamente. Imagine que vc possui uma classe chamada Terra. Essa classe possui um atributo chamado gravidade com valor 9.8. Algo mias ou menos assim:
public class Terra{
float gravidade = 9.8;
}
Do jeito q está, qualquer pessoa pode alterar diretamente o valor da gravidade apenas com uma instância da classe Terra.
Para evitar isso, fazemos o chamado Encapsulamento: declaramos a gravidade como private e damos acesso somente para leitura:
public class Terra{
private float gravidade = 9.8;
public float getGravidade()
{
return this.gravidade;
}
}
Dessa maneira, não é possível alterar a gravidade fora da classe Terra. Se quisermos permitir que alguém altere, aí criamos o setGravidade que recebe como parâmetro um valor do tipo float, que vai substituir o valor atual:
public class Terra{
private float gravidade = 9.8;
public float getGravidade()
{
return this.gravidade;
}
public void setGravidade(float novaGravidade)
{
gravidade = novaGravidade;
}
}
Essa é a lógica do parâmetro nos gets e sets.
Um parametro nada mais é que um dado necessario para a execução de um procedimento ou metodo de classe, por exemplo:
digamos que voce possui-se um metodo chamanho imprimeNome; esse metodo é bem alto explicativo, ou seja, ele tem que imprimir um nome que pode ser qualquer coisa logo, poderia ser algo assim
public void imprimeNome() {
out.print("nome_qualquer");
}
ou poderiamos deixa-lo de uma forma mais generica tipo
public void imprimeNome(String nome) {
out.print(nome);
}
perceba que o segundo exemplo recebe qualquer tipo de string para impressao entao poderiamos imprimir “qualquer_nome” ou outra string tipo “qualquer_coisa” somente passando ela no parametro do metodo bem como pede na assinatura.
att,
entãomas pq da passagem de parametro no gets e sets
http://blog.caelum.com.br/2006/09/14/nao-aprender-oo-getters-e-setters/
gets & sets não são a resposta pra tudo.
basicamente vc quer mudar um estado interno do objeto setando alguma propriedade. vc o faz via metodo pois assim não expõe os atributos internos. tem quem jure de pé junto que isso garante o encapsulamento, mas não é bem assim 