A.java中button事件监听如何让B.java运行,学习中遇到问题了

A.java中的

button.addActionListener(new ActionListener()
{
    public void actionPerformed(ActionEvent e)
    {
        //这里边该如何让B.java运行呢?
    }
});

刚学java 学到了类的引用,到了写具体案例就不会了,都说的太笼统了。能详细点说明一下吗?

可以在主程序写个全局变量,在main主程序套个if,里面写b的实例化,在a的button监听里面用反射把main里面的全局变量修改,对了,记得那个if要用多线程

下面是一个例子

import javax.swing.*;
import java.awt.*;

public class A {

    public static void main(String[] args) {
        JFrame jFrame = new JFrame();
        jFrame.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
        jFrame.getContentPane().add(createButton(jFrame));
        jFrame.setSize(300, 100);
        jFrame.setVisible(true);
    }

    private static JButton createButton(Window owner) {
        JButton button = new JButton("click me");
        button.addActionListener(e -> B.hello(owner));  // A 调用 B
        return button;
    }
}

class B {

    public static void hello(Window owner) {
        JDialog dialog = new JDialog(owner, "hello", Dialog.ModalityType.APPLICATION_MODAL);
        dialog.getContentPane().add(new JLabel("Hello!"));
        dialog.setSize(100, 50);
        dialog.setVisible(true);
    }
}