如何将对外部类的引用传递给内部类中的方法?(或者如何将"this"传递给内部类?)

Jus*_*tin 0 java oop

我有一个课程如下:

private class LanePair {

    public int cameraNumber;

    public Nest nest1, nest2;
    public LanePairStatus status = LanePairStatus.TIMER_OFF;
    Timer timer = new Timer();

    public LanePair(int cameraNunber, Nest nest1, Nest nest2) {
        this.cameraNumber = cameraNumber;
        this.nest1 = nest1;
        this.nest2 = nest2;
    }

    public void startTimer() {
        status = LanePairStatus.TIMER_ON;
        timer.schedule(new TimerTask() {
            public void run() {
                DoAskForLaneClear(/*I want to pass this class (LanePair) here*/);
            }
        }, 6000 ); // 6 seconds
    }

    public void stopTimer() {
        timer.cancel();
    }

}
Run Code Online (Sandbox Code Playgroud)

问题是,我无法弄清楚如何做到这一点.有什么建议?

有关:

Boz*_*zho 10

DoAskForLaneClear(LanePair.this);
Run Code Online (Sandbox Code Playgroud)

既然你不能使用this(它会引用它TimerTask),但是你的匿名类不能存在于一个实例中LanePair,那个实例被引用LanePair.this