求解java计算器代码
我是一个java的初学者,这的我写的一个java的计算器源代码
/**
  * @(#)Calculator.java
  *
  *
  * @author  
  * @version 1.00 2012/4/17
  */
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
class Calculatorframe extends Frame implements ActionListener
{
	JTextField jtf;	
	MenuBar menubar;//菜单条
	Menu m1,m2,m3;
	MenuItem mi1,mi2,mi3,mi4,mi5,mi6;
	//计算器中的按钮
	Button MC,MR,MS,MJIA,MJIAN;
	Button Back,CE,C,zheng_fu,sqrt;
	Button qi,ba,jiu,chu,quyu;
	Button si,wu,liu,cheng,yix;
	Button yi,er,san,jian;
	Button ling,point,jia;
	Button deng;	
	double x,y;//定义的两个计算操作数
	double sum;//计算结果	
	final int slength=30;//设置结果显示的有效长度	
	Calculatorframe()
	{
		super("简单计算器");
		this.setLayout(null);		
		menubar=new MenuBar();
		m1=new Menu("查看(V)");
		m2=new Menu("编辑(E)");
		m3=new Menu("帮助(H)");
		mi1=new MenuItem("标准型");
		mi2=new MenuItem("科学型");
		mi3=new MenuItem("程序员");
		mi4=new MenuItem("复制");
		mi5=new MenuItem("粘贴");
		mi6=new MenuItem("关于计算器");
		mi6.addActionListener(this);
		//计算结果的显示框
		jtf=new JTextField(35);
		jtf.setBounds(10,55,195,46);
		jtf.setEditable(true);
		jtf.setText("0");
		jtf.setHorizontalAlignment(JTextField.RIGHT);
		//按钮位置的设定以及为按钮注册监听器
		MC=new Button("MC");
		MC.setBounds(10,110,35,30);
		MC.addActionListener(this);		
		MR=new Button("MR");
		MR.setBounds(50,110,35,30);
		MR.addActionListener(this);		
		MS=new Button("MS");
		MS.setBounds(90,110,35,30);
		MS.addActionListener(this);		
		MJIA=new Button("M+");
		MJIA.setBounds(130,110,35,30);
		MJIA.addActionListener(this);		
		MJIAN=new Button("M-");
		MJIAN.setBounds(170,110,35,30);
		MJIAN.addActionListener(this);		
		Back=new Button("Back");
		Back.setBounds(10,145,35,30);
		Back.addActionListener(this);		
		CE=new Button("CE");
		CE.setBounds(50,145,35,30);
		CE.addActionListener(this);		
		C=new Button("C");
		C.setBounds(90,145,35,30);
		C.addActionListener(this);		
		zheng_fu=new Button("+/-");
		zheng_fu.setBounds(130,145,35,30);
		zheng_fu.addActionListener(this);		
		sqrt=new Button("sqrt");
		sqrt.setBounds(170,145,35,30);
		sqrt.addActionListener(this);		
		qi=new Button("7");
		qi.setBounds(10,180,35,30);
		qi.addActionListener(this);		
		ba=new Button("8");
		ba.setBounds(50,180,35,30);
		ba.addActionListener(this);		
		jiu=new Button("9");
		jiu.setBounds(90,180,35,30);
		jiu.addActionListener(this);		
		chu=new Button("/");
		chu.setBounds(130,180,35,30);
		chu.addActionListener(this);		
		quyu=new Button("%");
		quyu.setBounds(170,180,35,30);
		quyu.addActionListener(this);		
		si=new Button("4");
		si.setBounds(10,215,35,30);
		si.addActionListener(this);		
		wu=new Button("5");
		wu.setBounds(50,215,35,30);
		wu.addActionListener(this);		
		liu=new Button("6");
		liu.setBounds(90,215,35,30);
		liu.addActionListener(this);		
		cheng=new Button("*");
		cheng.setBounds(130,215,35,30);
		cheng.addActionListener(this);		
		yix=new Button("1/x");
		yix.setBounds(170,215,35,30);
		yix.addActionListener(this);		
		yi=new Button("1");
		yi.setBounds(10,250,35,30);
		yi.addActionListener(this);