DEV Community

FUNDAMENTOS JAVA
FUNDAMENTOS JAVA

Posted on

Entendendo os membros estáticos

Entendendo os Membros Estáticos

Definição de Membros Estáticos:

  • Membros estáticos podem ser usados independentemente de qualquer instância da classe.
  • São declarados com a palavra-chave static.
  • Métodos e variáveis podem ser estáticos.

Acesso aos Membros Estático:

  • Não requerem instâncias de objeto para serem acessados.
  • Podem ser acessados usando o nome da classe seguido pelo operador ponto (.).
  • Exemplo de acesso: Timer.count = 10;

Exemplo Clássico:

  • O método main() é estático porque é chamado pela JVM ao iniciar o programa.

Variáveis Estáticas:

  • São compartilhadas entre todas as instâncias da classe.
  • Uma única cópia da variável está disponível para todas as instâncias.

Exemplo de Código com Variáveis Estáticas:

StaticDemo.java

  • A variável estática y é compartilhada por todas as instâncias e sua modificação afeta todas elas.

Métodos Estáticos:

  • Chamados usando o nome da classe, sem precisar criar um objeto.
  • Podem chamar diretamente apenas outros métodos estáticos.
  • Podem acessar diretamente apenas variáveis estáticas.
  • Não possuem referência this.

Exemplo de Código com Métodos Estáticos:

StaticMeth.java

Restrições dos Métodos Estáticos:

  • Não podem acessar variáveis de instância diretamente.
  • Exemplo de erro: um método estático tentando acessar uma variável de instância comum resultará em erro de compilação.

Ver StaticError.java

Image of Datadog

The Essential Toolkit for Front-end Developers

Take a user-centric approach to front-end monitoring that evolves alongside increasingly complex frameworks and single-page applications.

Get The Kit

Top comments (0)

Billboard image

The Next Generation Developer Platform

Coherence is the first Platform-as-a-Service you can control. Unlike "black-box" platforms that are opinionated about the infra you can deploy, Coherence is powered by CNC, the open-source IaC framework, which offers limitless customization.

Learn more