Comunicação entre Objetos

Olá galera. Essa dúvida têm muitos tópicos por aqui, mas não consegui implementar da mesma forma que trata o meu Exemplo.
A minha dúvida é na hora de instanciar um Objeto sem que receba NULL, ou seja… sem “new Class();”

A questão é que uso uma classe “jbBarcode” somente com as variáveis, getters e setters.

Classe “jbBarcode”

public class jbBarcode{


private int codBar;
private String status;



public int getCodBar() {
    return codBar;
}

public void setCodBar(int codBar) {
    this.codBar = codBar;
}

public String getStatus() {
    return status;
}

public void setStatus(String status) {
    this.status = status;
}

}

Tenho um JFrame “frame1” que pressionando um botão, envio um valor para a Classe “jbBarcode” na variável codBar;

-JFrame “frame1”

jbBarcode jbBar = new jbBarcode();
    jbBar.setCodBar(Integer.parseInt(tfValorCode.getText()));

porém em Outro JFrame “frame2”, preciso retornar esse valor do “jbBarcode”.

-JFrame “frame2”

jbBarcode bcd = new jbBarcode();
    int codBar = bcd.getCodBar();

Como faço pra instanciar sem perder os valores?

Agradeço desde já.

Vamos, na verdade não é new Class() e sim new ConstrutorDaClass() é importante entender a diferença.

Quando você instancia uma classe, você não perde dados, você está criando um novo objeto, por isso a instrução se chama new.

No seu exemplo você não quer enviar algo de uma classe para outra e sim de um objeto para outro.

Como é que objetos conversam entre si?
Através de métodos.

Então, você pode criar um método no seu frame2 chamado setProgress(int valor) por exemplo.
Aí lá no frame1 você chama o método do objeto do frame2.

2 curtidas

Obrigado pelas observações e solução Staroski