JAVA:传递到另一个类时为空值

JAVA:传递到另一个类时为空值,java,netbeans,Java,Netbeans,我正在编写一个程序,其中将数组传递给另一个类。但是,当我尝试加载传递了一组数组值的类时,其中没有值。请参阅我的代码: Menu.java public class Menu extends javax.swing.JFrame { private String[] menu; private Globals vars = new Globals(); private DefaultTableModel grill; private

我正在编写一个程序,其中将数组传递给另一个类。但是,当我尝试加载传递了一组数组值的类时,其中没有值。请参阅我的代码:

Menu.java

public class Menu extends javax.swing.JFrame {

        private String[] menu;
        private Globals vars = new Globals();
        private DefaultTableModel grill;
        private DefaultTableModel seafoods;
        private DefaultTableModel rice;
        private DefaultTableModel drinks;
        private int menuCount;

        public Menu() {
            initComponents();
            this.setLocationRelativeTo(null);
            menuCount = vars.countMenu();
            menu = new String[menuCount];
            menu = vars.setMenu();
            grill = (DefaultTableModel) jTable1.getModel();
            seafoods = (DefaultTableModel) jTable2.getModel();
            rice = (DefaultTableModel) jTable3.getModel();
            drinks = (DefaultTableModel) jTable4.getModel();

            /*** SOME CODES HERE ***/

            /*** item_name, item_code, item_qty, item_price are arrays ***/
            /*** I have already tested them and they have values ***/


            if (noValue > 0) {
                JOptionPane.showMessageDialog(null, "Please input quantity");
                return;
            }

            if (count == 0) {
                JOptionPane.showMessageDialog(null, "Plese select some items");
                return;
            } else {
                Transaction trns = new Transaction();
                //JOptionPane.showMessageDialog(null, count);
                trns.setSelectedItems(item_name, item_code, item_qty, item_price, count);
                trns.setVisible(true);
                //this.setVisible(false);
            }
        }

        public static void main(String args[]) {
            java.awt.EventQueue.invokeLater(new Runnable() {
                public void run() {
                    new Menu().setVisible(true);
                }
            });
        }
public class Transaction extends javax.swing.JFrame {

    private String[] itemcode;
    private double[] qty;
    private double[] price;
    private String[] items;
    private String[] info;
    private static Scanner iRead;
    private int count;

    public Transaction() {
        initComponents();
        this.setLocationRelativeTo(null);

        itemcode = new String[count];

        DefaultListModel listModel = new DefaultListModel();
        String header = "| Item Code | Item Name | Price | Quantity";
        listModel.addElement(header);
        JOptionPane.showMessageDialog(null, count);

        lsItems.setModel(listModel);
    }
    public void setSelectedItems(String[] itm, String[] cd, double[] qnty, double[] prc, int itemCnt) {
        this.items = itm;
        this.itemcode = cd;
        this.qty = qnty;
        this.price = prc;
        this.count = itemCnt;
    }
}
Transaction.java

public class Menu extends javax.swing.JFrame {

        private String[] menu;
        private Globals vars = new Globals();
        private DefaultTableModel grill;
        private DefaultTableModel seafoods;
        private DefaultTableModel rice;
        private DefaultTableModel drinks;
        private int menuCount;

        public Menu() {
            initComponents();
            this.setLocationRelativeTo(null);
            menuCount = vars.countMenu();
            menu = new String[menuCount];
            menu = vars.setMenu();
            grill = (DefaultTableModel) jTable1.getModel();
            seafoods = (DefaultTableModel) jTable2.getModel();
            rice = (DefaultTableModel) jTable3.getModel();
            drinks = (DefaultTableModel) jTable4.getModel();

            /*** SOME CODES HERE ***/

            /*** item_name, item_code, item_qty, item_price are arrays ***/
            /*** I have already tested them and they have values ***/


            if (noValue > 0) {
                JOptionPane.showMessageDialog(null, "Please input quantity");
                return;
            }

            if (count == 0) {
                JOptionPane.showMessageDialog(null, "Plese select some items");
                return;
            } else {
                Transaction trns = new Transaction();
                //JOptionPane.showMessageDialog(null, count);
                trns.setSelectedItems(item_name, item_code, item_qty, item_price, count);
                trns.setVisible(true);
                //this.setVisible(false);
            }
        }

        public static void main(String args[]) {
            java.awt.EventQueue.invokeLater(new Runnable() {
                public void run() {
                    new Menu().setVisible(true);
                }
            });
        }
public class Transaction extends javax.swing.JFrame {

    private String[] itemcode;
    private double[] qty;
    private double[] price;
    private String[] items;
    private String[] info;
    private static Scanner iRead;
    private int count;

    public Transaction() {
        initComponents();
        this.setLocationRelativeTo(null);

        itemcode = new String[count];

        DefaultListModel listModel = new DefaultListModel();
        String header = "| Item Code | Item Name | Price | Quantity";
        listModel.addElement(header);
        JOptionPane.showMessageDialog(null, count);

        lsItems.setModel(listModel);
    }
    public void setSelectedItems(String[] itm, String[] cd, double[] qnty, double[] prc, int itemCnt) {
        this.items = itm;
        this.itemcode = cd;
        this.qty = qnty;
        this.price = prc;
        this.count = itemCnt;
    }
}

我试图将一组值[
setSelectedItems()
]从
菜单
Class传递到
事务
类。但是,当我加载
事务
类时,没有收到任何值。

您希望发生什么?似乎您希望填充某些模型,但all
setSelectedItems
是否设置了类的一些成员字段。请从菜单类创建@Michael I'm expecting值,其中应显示事务类(jList)。这就是为什么我使用
setSelectedItems
将值从菜单传递到事务类。我使用了
JOptionPane.showMessageDialog(null,count)检查是否成功传递了值。为什么只有两个jframe,而只显示一个jframe而显示另一个jframe?请提供MCVE,以便我们了解您的问题。目前尚不清楚在setSelectedItems中设置后,eg this.items会发生什么情况。因此,在你的问题上帮助你几乎是不可能的。