令牌“;”出错,{预期的GUI

时间:2013-04-14 20:26:52

标签: java syntax actionlistener

我正在尝试使用计算器,并使用一些布尔变量来检查是否已添加点,以及用户是否输入了第二个数字。

问题出在我评论的行中。我试图稍后在ActionListener中使用这些变量,但由于这些错误,它不允许我。 (编译器没有指出任何其他错误)我不知道是否应该在其他地方声明变量,请帮忙。谢谢。

public class Calculadora extends Frame implements ActionListener, WindowListener

{
  Button btn1, btn2, btn3, btn4, btn5, btn6, btn7, btn8, btn9, btn0; 
  Button btnSum, btnMin, btnMult, btnDiv, btnDot, btnEq, btnAns;
  Button btnSin, btnCos, btnTan, btnSqrt, btnXpowY, btnLn, btnPi, btnE, btnAbs;
  TextField TxAns, TxOper;
  Label LblOper, LblAns;
  Panel PnlGeneral, PnlOper, PnlSimple, PnlExtras, PnlText;

    public String num1, num2;
    public double ans;
    public boolean punto= false;  
    public boolean segunda= false;  **//Error: Syntax error on token ";", { expected**
    num1="";  **//Syntax error on tokens, ConstructorHeaderName expected instead**
    num2="";

    public static void main(String[] args) throws IOException  **//Syntax error on token "(", ; expected**
    {

2 个答案:

答案 0 :(得分:3)

除了声明......

之外,你不能在类的主体/声明中指定变量

删除变量赋值:

num1="";  
num2="";

来自班级的身体。

答案 1 :(得分:2)

这些陈述:

num1="";
num2="";

...不在方法中。你可以放在方法/构造函数之外的唯一东西是声明和初始化块。

将值作为声明的一部分进行分配会更简单:

public String num1 = "", num2 = "";

...虽然我不建议使用公共变量,但说实话。