簡體   English   中英

@Override注釋出現問題

[英]Problem with @Override annotation

我正在創建一個類似於Banko applet的Java應用程序。 當我點擊“public void init()”方法時,我的表現很好。 當我完成時,除了那之外所有編譯。 它告訴我添加@Override注釋。 我試過了,但每當我這樣做時,無論我把它放在哪里,編譯器都會失敗並出現以下錯誤:

找不到標志

符號:類覆蓋

location:class aBomb.Bomb

我不知道什么可能阻止應用程序正常執行。 :| 如果您在下面寫的代碼中找到了您認為應該更改的內容,請告訴我。 我是Java的新手:(代碼:

public void init() {
    BorderLayout border = new BorderLayout();
    setLayout(border);

    JPanel top = new JPanel();
    JLabel moneyLabel = new JLabel("Money : $");
    moneyField = new JTextField("", 8);
    moneyField.setEditable(false);
    JLabel foundLabel = new JLabel("Found: ");
    foundField = new JTextField("", 8);
    foundField.setEditable(false);

    restart = new JButton("Restart");
    restart.addActionListener(this);
    top.add(moneyLabel);
    top.add(moneyField);
    top.add(foundLabel);
    top.add(foundField);
    top.add(restart);
    add(top, BorderLayout.NORTH);

    board = new Board(this, ROW_COUNT, COLUMN_COUNT, BOMB_COUNT);
    add(board, BorderLayout.CENTER);
    setup();
    setVisible(true);
}

首先,如果您至少包含了類定義(“公共類......”部分),那將會非常有用

我猜你有一個名為aBomb的類,它從Applet擴展而來:

public class aBomb extends Applet {
//...
    // Here's the init method; the @Override goes
    // immediately before the declaration.
    @Override
    public void init() {
//...
};

該錯誤消息看起來好像您錯誤地將@Override拼寫為@Overrides

您嘗試使用的注釋類是java.lang.Override 這是默認導入的。

檢查以下內容:

  • 注釋是@Override但錯誤消息表明您將其拼寫為@Overrides 檢查源代碼是否存在拼寫/輸入錯誤。

  • 您正在使用Java 5.0或更高版本。

  • 您還沒有使用-source-target編譯開關來編譯舊版本的Java。

  • 您沒有使用-bootclasspath (或其他)來編譯非標准類庫。

注釋稱為@Override ,而不是@Overrides 它走在最重要的方法面前,如:

@Override
public void init() {
   ...

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM