java文件中可以写多个类
也可以写一个类
但是在写图形界面的时候我遇到了问题
假设我就想实现单击button时改变textField中的文字这一功能
如果我把所有的类写在一个文件中,我添加时间相应的时候就可以直接写txtFiled.setText("TEXT");
但是如果我要分开写的话,我就必须把txtField设置成static
请问有什么更好的方法?
------解决方案--------------------
传界面对象给其他类,或者在界面对象设置public static 的方法。
------解决方案--------------------
举个示例,这样好解决问题嘛
------解决方案--------------------
可以设定一个大总管,这个大总管持有对方的引用,举个例子:
所有的类都分开写,不在同一个文件里.
- Java code
//大总管public class Test{ myAwt m = new myAwt(); public static void main(String[] args) { System.out.println(m.i); }}//另外一个文件的一个类class myAwt{ private int i=100;}
------解决方案--------------------
不是很明白楼主的意思,不知道是不是这样,直接传个引用过去
- Java code
package MainUI.java;import javax.swing.*;import Listener.java.*; public class MainUI extends JFrame{ private JButton jbtn=null; private JTextField textField=null; //这里这么写 public MainUI(){ jbtn=new JButton("click me"); textField=new JTextField(10); Listener ls=new Listener(textField); jbtn.addActionListener(ls); //此出省略UI代码若干 }public static void main(String[] args){ new MainUI(); }} package Listener.java;import javax.swing.*;import java.awt.event.*;public class Listener implements ActionListener{ private JTextField textField=null;public Listener(JTextField tf){ textField=tf;}public void actionPerformed(ActionEvent e){ textField.setText("Clicked!");//这里这么写 } }
------解决方案--------------------
------解决方案--------------------