在不通用声明的情况下以两种方法使用 TextFields

Using TextFields in Two Methods without Declaring Universally

大家好,我是使用 JFrame 和 Action Listener 的新手,

我想从 20 多个字段中获取输入,然后我需要将其存储在数据库中。

我在 ActionEvent 中执行那些存储操作

Class Dialog_Box
    {
    JTextField Name; //1st TextField
    JTextField Place; //2nd TextField
    JTextField City; //3rd TextField
    JTextField Country; //4th
    .
    .
    .
    JTextField Pincode; //20th TextField

    Dialog_Box()
        {
        JButton Add = new JButton(
            {
            public void Action Performed()
                {
                String Name_data=Name.getText();//Getting first input
                String Place_data=Place.getText();
                .
                .
                .
                String Pincode=Pincode.getText();//Getting 20th input
                //Storing these data in Database
                }
            }); 
        }
    }

由于我的 TextField 数据需要在两种方法(Constructor 方法和 ActionPerformed 方法)中使用,所以我将通用地声明这些文本字段。

但我不想普遍声明它。 还有其他方法可以声明这些 TextField 吗?

如果您需要在此 class 中的多个实例方法中查询 JTextField 的状态,则它需要在允许这样做的范围内。

解决此问题的一种方法是使其成为 class 中的实例字段。其他选项是使其成为另一个 class 的实例字段,并作为此 class 中的字段保存。

其他可行的选项还包括使用 JTextFields 的集合,例如 ArrayList<JTextField>Map<String, JTextField>,您是否要使用它取决于您打算如何获取对感兴趣的 JTextField。但是无论如何,如果要在整个 class.

的多个方法/构造函数中可见,这个集合仍然需要是一个实例字段