GUI_4_2010_03_19_补

内部类
在一个类里访问另一个类的成员变量
好处:
可以方便的访问包装类的成员
可以更清楚的组织逻辑,防止不应该被其它类访问的类进行访问
何时使用:
该类不允许或不需要其它类进行访问时

 

---------------------------------------------------------------------------------------------------------------------------------------------------------------------

 

import java.awt.*;
import java.awt.event.*;

public class TFMath{
  public static void main(String [] args){
    new TFFrame().launchFrame();
  }
}

class TFFrame extends Frame{
 TextField num1,num2,num3;
  public void launchFrame(){
    num1 = new TextField(10);
    num2 = new TextField(10);
    num3 = new TextField(20);
    Label lblPlus = new Label("+");
    Button btnEqual = new Button("=");
    //btnEqual.addActionListener(new MyMonitor(num1,num2,num3));//方法一
    //btnEqual.addActionListener(new MyMonitor(this));//方法二
    btnEqual.addActionListener(new MyMonitor());//方法三
    setLayout(new FlowLayout());
    add(num1);
    add(lblPlus);
    add(num2);
    add(btnEqual);
    add(num3);
    pack();
    setVisible(true);
  }
  class MyMonitor implements ActionListener{
    public void actionPerformed(ActionEvent e){
      int n1 = Integer.parseInt(num1.getText());
      int n2 = Integer.parseInt(num2.getText());
      num3.setText(""+(n1+n2)); 
    } 
  }
}

/*class MyMonitor implements ActionListener{
  TextField num1,num2,num3;
  public MyMonitor(TextField num1,TextField num2,TextField num3){
    this.num1 = num1;
    this.num2 = num2;
    this.num3 = num3; 
  }//方法一
 
  TFFrame tf = null;
  public MyMonitor(TFFrame tf){
    this.tf = tf; 
  }//方法二
 
   public void actionPerformed(ActionEvent e){
     int n1 = Integer.parseInt(tf.num1.getText());
     int n2 = Integer.parseInt(tf.num2.getText());
     tf.num3.setText(""+(n1+n2));
     System.out.println("ok"); 
   } 
}*/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值