0

クラス TimerTask から実行されるメソッドのオーバーライドに問題があります。

これが私のコードです:

public class PGameCore 
{

    Toolkit toolKit;
    Timer   timer;

    public PGameCore(int clockIntervalInSeconds)
    {
        timer = new Timer();
        timer.schedule(new CoreTimer(), 1000 * clockIntervalInSeconds);
    }

    class CoreTimer extends TimerTask
    {
            public void Run()
            {
                System.out.println("BEEEP :)");
                toolKit.beep();
            }
    }

}

問題は次の行にあります。

class CoreTimer extends TimerTask

私はNetbeansを使用しています。「PGameCore.CoreTimer は抽象的ではなく、TimerTask の抽象メソッド run() をオーバーライドしません。」

4

3 に答える 3

6

「PGameCore.CoreTimer は抽象的ではなく、TimerTask の抽象メソッド run() をオーバーライドしません。」

あなたのメソッド名はRun、本来あるべきものrunです。

于 2013-03-27T09:10:00.267 に答える
2

Run ではなく run - Java では大文字と小文字が区別されます。

于 2013-03-27T09:12:43.557 に答える
0

Eclipse または NetBeans IDE を使用します。コンパイル時の問題の多くを解決します。

上記の場合、runメソッドを使用する必要があります。これは大文字と小文字が区別されます。RunR が大文字の場所を使用しましたが、これは間違った方法です。

このようなエラーを避けるために、1 つの習慣を守ってください。メソッド名はキャメルケース、クラス名はパスカルケースで記述します。

于 2013-03-27T09:22:24.643 に答える