import java.awt.FlowLayout;
import java.awt.TextField;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
public class TF {
public static void main(String[] args){
new TFFrame() ;
}
}
class TFFrame extends JFrame{
TextField num1 ,num2 ,num3 ;
public TFFrame(){
num1 =new TextField(10) ;
num2 =new TextField(10) ;
num3 =new TextField(15) ;
JButton button =new JButton("=") ;
button.addActionListener(new MyEvent1()) ;
JLabel label =new JLabel("+") ;
add(num1) ;
add(label) ;
add(num2) ;
add(button) ;
add(num3) ;
setLayout(new FlowLayout()) ;
setVisible(true) ;
pack() ;
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE) ;
}
}
class MyEvent1 implements ActionListener{
/*TFFrame tf =null ;
public MyEvent1(TFFrame tf){
this.tf =tf ;
}*/
TFFrame tf =new TFFrame() ;
public void actionPerformed(ActionEvent e) {
int n1 =Integer.parseInt(tf.num1.getText()) ;
int n2 =Integer.parseInt(tf.num2.getText()) ;
tf.num3.setText(""+(n1+n2)) ;
}
}
这个程序出错在主类new了一个TFFrame的对象,在MyEvent里也new了一个TFFrame对象,这样做为什么会错
import java.awt.TextField;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
public class TF {
public static void main(String[] args){
new TFFrame() ;
}
}
class TFFrame extends JFrame{
TextField num1 ,num2 ,num3 ;
public TFFrame(){
num1 =new TextField(10) ;
num2 =new TextField(10) ;
num3 =new TextField(15) ;
JButton button =new JButton("=") ;
button.addActionListener(new MyEvent1()) ;
JLabel label =new JLabel("+") ;
add(num1) ;
add(label) ;
add(num2) ;
add(button) ;
add(num3) ;
setLayout(new FlowLayout()) ;
setVisible(true) ;
pack() ;
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE) ;
}
}
class MyEvent1 implements ActionListener{
/*TFFrame tf =null ;
public MyEvent1(TFFrame tf){
this.tf =tf ;
}*/
TFFrame tf =new TFFrame() ;
public void actionPerformed(ActionEvent e) {
int n1 =Integer.parseInt(tf.num1.getText()) ;
int n2 =Integer.parseInt(tf.num2.getText()) ;
tf.num3.setText(""+(n1+n2)) ;
}
}
这个程序出错在主类new了一个TFFrame的对象,在MyEvent里也new了一个TFFrame对象,这样做为什么会错









