Sobes.tech
Junior — Middle

Como declarar e implementar uma função interna dentro de uma classe em Java?

sobes.tech IA

Resposta da IA

Em Java, dentro de uma classe, pode declarar uma classe interna (inner class), que terá acesso aos campos e métodos da classe externa. Se estiver a falar de uma "função interna", em Java não existem funções como tal fora dos métodos, mas pode usar classes internas ou expressões lambda.

Exemplo de uma classe interna com um método:

public class OuterClass {
    private int value = 10;

    class InnerClass {
        void printValue() {
            System.out.println("Valor da classe externa: " + value);
        }
    }

    void createInner() {
        InnerClass inner = new InnerClass();
        inner.printValue();
    }
}

Em Android e Java 8+, pode usar expressões lambda para declarar funções dentro de métodos:

public void example() {
    Runnable runnable = () -> System.out.println("Função interna via lambda");
    runnable.run();
}