Back

Explore Courses Blog Tutorials Interview Questions
0 votes
2 views
in Java by (4k points)

Given the following code:

public interface Selectable {

  public void select();

}

public class Container implements Selectable {

  public void select() {

  ...

  }

  public void createAnonymousClass() {

    Selectable s = new Selectable() {

      public void select() {

        //see comment below.

      }

    };

  }

}

I want to access Container.select() from within my anonymous class' select() method. However, this.select() would again call the anonymous class' select() method.

My suggestion would be:

Introduce a field into Container, e.g.

private Container self = this;

Now I can access Container.select() by calling self.select() from within the anonymous class.

Is this a reasonable way? Or are there any better ways?

1 Answer

0 votes
by (46k points)

Try:

Container.this.select();

Browse Categories

...