Acessando instância de classe externa a partir de classe interna anônima
Em Java, uma classe interna anônima é uma classe aninhada sem um nome explícito. Normalmente é usado para implementar manipuladores de eventos ou para substituir métodos abstratos em uma classe externa.
Suponha que você tenha uma classe externa chamada a com um método chamado doStuff que usa um parâmetro InnerClass. Dentro da classe externa, você cria uma classe interna anônima como parâmetro para doStuff.
De dentro da classe interna anônima, você deseja acessar um método na classe externa, como otherMethod. Como você pode se referir à instância da classe externa da classe interna anônima?
A resposta está no uso da sintaxe OuterClass.this. Esta expressão permite acessar a instância envolvente da classe externa. No seu exemplo, para chamar otherMethod da classe interna anônima, você usaria:
a.this.otherMethod();
Esta sintaxe garante que você está referenciando a instância correta da classe externa classe, mesmo se houver várias instâncias da classe no escopo.
Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.
Copyright© 2022 湘ICP备2022001581号-3