KAI 發問時間: 電腦與網際網路程式設計 · 1 0 年前

JAVA編譯後的錯誤?

程式碼:

↓↓↓↓↓

import java.awt.*;

import javax.swing.*;

import java.awt.event.*;

public class PizzaPanel extends JPanel

{

private JCheckBox pizaa1,pizza2,pizza3;

//-----------------------------------------------------------------

// 加入文字的Tab,和選定時所需要的CheckBox

//-----------------------------------------------------------------

public PizzaPanel()

{

setBackground (Color.orange);

JLabel l1 = new JLabel ("歡迎來到KKC Pizza Hot ");

JLabel l2 = new JLabel ("請選擇喜歡的口味 " + "及填入所需的數量");

JCheckBox pizza1 = new JCheckBox ("和風燻雞");

pizza1.setBackground(Color.orange);

JCheckBox pizza2 = new JCheckBox ("嗆辣章魚");

pizza2.setBackground(Color.orange);

JCheckBox pizza3 = new JCheckBox ("蔬菜饗宴");

pizza3.setBackground(Color.orange);

add (l1);

add (l2);

add (pizza1);

add (pizza2);

add (pizza3);

}

//-----------------------------------------------------------------

// 回傳 Check box 的觸發事件

//-----------------------------------------------------------------

public Class PizzaPanel implements ItemListener

{

public void itemStateChanged (ItemEvent event)

{

if (event.pizza1.isSelected());

if (event.pizza2.isSelected());

if (event.pizza3.isSelected());

}

}

}

編譯結果:

C:\Documents and Settings\Administrator\JAVA\pizza>javac PizzaPa

nel.java

PizzaPanel.java:42: ';' expected

public Class PizzaPanel implements ItemListener

^

1errors

-*-*-*-*-*-*-*-*-*-*-*-*-*-*

我不太知道他這編譯錯誤的原因是啥?

不知道各位大大能為我解惑嗎?

4 個解答

評分
  • ?
    Lv 7
    1 0 年前
    最佳解答

     首先,單 public Class PizzaPanel implements ItemListener 這一行就有一些小問題,

      1. Class 中的 C 要小寫;

      2. 類別名稱 PizzaPanel 重覆到上面了;

      3. 有名稱的內部類別 (inner class) 不能放在方法裡,在你的程式碼內是放在建構子 public PizzaPanel() 裡唷。

     再來,方法 itemStateChanged (ItemEvent event) 的程式碼中,event.pizza3.isSelected() 的用法是不對的。

     還有就是結構上的問題,請參考我修改後的做法。

    import java.awt.*;

    import javax.swing.*;

    import java.awt.event.*;

    public class PizzaPanel extends JPanel implements ItemListener

    {

    private JCheckBox pizza1,pizza2,pizza3;

    // 加入文字的Tab,和選定時所需要的CheckBox

    public PizzaPanel()

    {

    setBackground (Color.orange);

    JLabel l1 = new JLabel ("歡迎來到KKC Pizza Hot ");

    JLabel l2 = new JLabel ("請選擇喜歡的口味 " + "及填入所需的數量");

    JCheckBox pizza1 = new JCheckBox ("和風燻雞");

    pizza1.setBackground(Color.orange);

    JCheckBox pizza2 = new JCheckBox ("嗆辣章魚");

    pizza2.setBackground(Color.orange);

    JCheckBox pizza3 = new JCheckBox ("蔬菜饗宴");

    pizza3.setBackground(Color.orange);

    add (l1);

    add (l2);

    add (pizza1);

    add (pizza2);

    add (pizza3);

    }

    // 回傳 Check box 的觸發事件

    public void itemStateChanged (ItemEvent event)

    {

    if (pizza1.isSelected());

    if (pizza2.isSelected());

    if (pizza3.isSelected());

    }

    }

  • 匿名使用者
    7 年前

    【亞洲36588合法彩券公司直營 官網: A36588.NET 】

    【 最新活動→迎接新會員,首存狂送20% 】

    【運動→電子→對戰→現場→彩球 】

    【免費服務 →電影區、討論區、KTV歡唱、運動轉播、即時比分、24H客服 】

    【亞洲36588合法彩券公司直營 官網: A36588.NET 】

  • 1 0 年前

    恆毅????那是啥!!!

    我只是ㄧ個很單純修JAVA的資管大學生

  • 你應該是恆毅的學生對吧!!

還有問題?馬上發問,尋求解答。