Слушатель не задает значение переменной через сеттер - Java
Формулировка задачи:
Всем привет. Почему-то сеттер не слышит слушателя событий и не задает через него значение переменной, а может дело в другом, не могу понять
public class Main{ private String val; public String getVal() { return val; } public void setVal(String val) { this.val = val; } public Main() { JFrame jFrame = new JFrame("Value test"); jFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); jFrame.setVisible(true); JButton jButton = new JButton("get text"); JTextComponent jt = new JTextField("Test"); jButton.addActionListener(new Listener(this,jt)); jFrame.add(jt, BorderLayout.NORTH); jFrame.add(jButton, BorderLayout.SOUTH); jFrame.pack(); jFrame.setLocationRelativeTo(null); } public static void main(String[] args) { Main m =new Main(); System.out.println(m.val); } } class Listener implements ActionListener { private Main m; private JTextComponent jTextComponent; public Listener(Main m, JTextComponent jTextComponent) { this.m = m; this.jTextComponent = jTextComponent; } @Override public void actionPerformed(ActionEvent e) { m.setVal(jTextComponent.getText()); } }
Решение задачи: «Слушатель не задает значение переменной через сеттер»
textual
Листинг программы
System.out.println(m.val);
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д