Sobes.tech
Junior

O que é uma classe estática?

sobes.tech IA

Resposta da IA

No Java, não existem classes estáticas ao nível superior. static aplica-se a classes aninhadas (nested).

Classe Aninhada Estática (Static Nested Class):

  • Declarada com o modificador static dentro de outra classe (classe exterior).
  • Não tem acesso direto aos campos e métodos não estáticos da classe exterior, apenas através de uma instância da mesma (se necessário).
  • Pode aceder diretamente aos campos e métodos estáticos da classe exterior.
  • É criada sem criar uma instância da classe exterior.
  • É usada para agrupar classes relacionadas ou para facilitar o acesso a classes utilitárias.

Exemplo de criação:

class Outer {
    static class StaticNested {
        // campos e métodos da classe aninhada estática
    }
}

Exemplo de uso:

// Criação de uma instância da classe aninhada estática
Outer.StaticNested nestedObject = new Outer.StaticNested();

Assim, "classe estática" no contexto do Java geralmente refere-se a uma classe aninhada estática.