Fala galera,
Como que faço para acessar o meu get/set em outra classe?
Por Exemplo:
public class Pessoa{
private String name;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
Ao tentar acessar os valores em outra classe com o código abaixo, os valores veem zerados.
Eu sei que os valores veem zerados pq eu dei um new, mais como que faço para pegar os valores?
Pessoa pessoa = new Pessoa(); System.out.println(pessoa.getName());
Você não setou valores, no objeto, então não vai retornar nada.
Você pode fazer de duas formas!
public class Pessoa {
private String name;
public Pessoa() { }
public Pessoa(String name) {
this.name = name;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
// Primeira forma
Pessoa pessoa = new Pessoa();
pessoa.setNome("Giropops");
System.out.println(pessoa.getNome()); // Giropops
// Segunda forma
Pessoa pessoa = new Pessoa("Strigus");
System.out.println(pessoa.getNome()); // Strigus
Eu esqueci de postar, mais eu setei o valor assim:
Pessoa pessoa = new Pessoa();
pessoa.setNome("teste");
Agora eu preciso acessar esse valor em outra classe.
O valor só é acessível partindo da própria referência que contém a informação, para conseguir acesso partindo de outra referência que não seja a da classe Pessoa, você tem que fornecer a referência dessa “pessoa” para a outra classe.
Exemplo:
public class Color {
private String name;
// Constructors and getters & setters
}
public class Other {
private Color color;
// Constructors and getters & setters
}
// Como ficaria
Color color = new Color("Red");
Other other = new Other(color);
System.out.println(other.getColor().getName()); // Red