将值从一个类返回到另一个类

时间:2013-03-23 02:46:14

标签: java swing constructor jframe netbeans-7

class1-保存坐标的动态值,并希望将值返回给class2的函数。

public class NewJFrame extends javax.swing.JFrame {    

    public NewJFrame() {
        initComponents();
    }    

    ArrayList<Integer> al= new ArrayList<Integer>();
    private void jLabel1MouseClicked(java.awt.event.MouseEvent evt) {
      int x= evt.getX();
      int y= evt.getY();          
      al.add(x);
      al.add(y);
       System.out.println("hi1"+al);
    }
     public ArrayList<Integer> cord()
     {
          System.out.println("hi2"+al);
         return al;
     }

    public static void main(String args[]) {

        java.awt.EventQueue.invokeLater(new Runnable() {

            public void run() {
                new NewJFrame().setVisible(true);
            }
        });
    }       

    private javax.swing.JLabel jLabel1;       
}

的Class2

public class JavaApplication13 {

    public void hello()
    {
        NewJFrame j= new NewJFrame();
        ArrayList<Integer> al=j.cord();
        System.out.println("hi3"+al);
    }

    public static void main(String[] args) {
        JavaApplication13 j= new JavaApplication13();
        j.hello();
    }
}

我想将class1中的x和y坐标值返回给class2。但它显示为null。救命。

1 个答案:

答案 0 :(得分:0)

NewJFrame班级中设置ArrayList<Integer> al公共静态,并在JavaApplication13中读取System.out.println("hi3"+NewJFrame.al.get())。当然,这种方法仅仅是千万亿次的方法,而且你的代码存在一些问题:你不能(我认为你是goind从ArrayList获得一些价值)做"hi3"+al