无法运行

Runnable not work

您好,我创建了一个测试 java 代码,但是 class 运行 无法工作。 运行nable builder 中的代码工作但重写 运行 不工作

import java.util.Timer;
import java.util.TimerTask;
import java.util.Random;

public class Test
{
    //timer for change zone
    private Timer timeZoneChange;

    Test()
    {
        timeZoneChange = new Timer();

        timeZoneChange.schedule(new TimeForChangeZone(), 1 * 1000);
    }


    public class TimeForChangeZone extends TimerTask
    {
        @Override
        public void run()
        {
            System.out.println("testing..");
            new UpdatePvpFlagZone(false);
            //change zone flag
            timeZoneChange.schedule(new TimeForChangeZone(), 1 * 60000);
        }
    }

    public class UpdatePvpFlagZone implements Runnable
    {
        //remove pvp flag
        private boolean removePvpFlag;

        public UpdatePvpFlagZone(boolean removePvpFlag)
        {
            removePvpFlag = removePvpFlag;
        }

        @Override
        public void run()
        {
            for (int i = 0; i<10; i++)
            {
                if (i == 5) 
                    break;
                //update flag
                if (!removePvpFlag) 
                {
                    if (i == 6)
                        break;  
                    System.out.println(i);
                    break;
                }
                //remove flag
                if (i == 7)
                    break;
                System.out.println(i);
            }
        }
    }

    public static void main(String[] args)
    {
        new Test();
    }
}

控制台打印此内容但在内部覆盖 运行 不打印。

> java Test
testing..

这一行new UpdatePvpFlagZone(false);,调用了构造函数,但是runnable还没有启动。

像这样启动runnable:

UpdatePvpFlagZone upfz new UpdatePvpFlagZone(false);
upfz.run();