Private para public

7 respostas
M

como faço pra mudar de private para public a linha abaixo:

private void jtfLoteActionPerformed(java.awt.event.ActionEvent evt) { // TODO add your handling code here: }

é um textfield que precisa ser enxergado em outra classe, se eu simplesmente trocar
de private para public sera que vou conseguir enxergalo em outra classe?

7 Respostas

drsmachado

O trecho que você postou indica que este componente possui uma ação relacionada ao mesmo.

Sugiro criar uma variável que receba o valor do textfield e, a partir desta, um getter e um setter.
Como getter e setter são públicos, fica mais fácil de controlar.

M

e como crio esse getter e setter?

drsmachado
private JTextField meuTextField() = new JTextField();

public String dadosDoTextField;

public void setDadosDoTextField(String dado){
dadosDoTextField = dado;
//opcional, você pode colocar ou não ou chamar um método, que é mais elegante
meuTextField.setText(dadosDoTextField);
}

public String getDadosDoTextField(){
dadosDoTextField = meuTextField.getText();
return dadosDoTextField();
}

Algo assim

M

mas se eu nao criar essa variavel, teria como eu tornar esse text fild public??

starkiller

Pode ser assim.

private ActionEvent evt;

private void  jtfLoteActionPerformed(java.awt.event.ActionEvent evt) {  
            //Lógica do seu metodo
            
           //Depois de tratada o action event, atribua-a a sua variável private, e depois vc a acessa pelo metodo get.
           this.evt = evt;
 }  

public ActionEvent getEvt(){
       return evt;
}


public void setEvt(ActionEvent  evt){
      this.evt = evt;
}
M

entao sem chance realmente de eu mudar de private pra public??

somente criando uma variavel com os getters e setters para tornar public??

drsmachado

A assinatura do método (private) é imutável, afinal, ele é ineterente a um override que você faz por implementar o ActionListener.

Criado 31 de janeiro de 2011
Ultima resposta 31 de jan. de 2011
Respostas 7
Participantes 3