Gente,
Desculpando a minha ignorância, porque um objeto tem acesso a atributos PRIVATE de um outro objeto do mesmo tipo ? Que sentido faz isso ?
Dêem uma olhada no exemplo abaixo, notem que dentro do método checkOnibus eu crio um outro objeto Onibus , variável b, e consigo alterar o conteúdo do atributo id diretamente sem passar pelo método setId().
public class Onibus {
private int id;
private int ano;
private int qtdePoltronas;
/** Creates a new instance of Onibus */
public Onibus() {
}
public void checkOnibus() {
Onibus b = new Onibus();
b.id = 4343;
System.out.println("objeto b " + b.id );
}
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
}
Estou tentando achar literatura que me explique qual a utilidade disso. Deve ter alguma boa explicação. Infelizmente eu não consegui encontrar… Até arrisco a falar que isso pode gerar problemas. Imaginem se eu tivesse algum tipo de validação no meu método setId() .
Obrigado