Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Compreensão de Static

Em muitos momentos eu não entendo a melhor forma de estar usando o static no meu código. Alguém teria como me dar uma luz?

2 respostas
solução!

Boa noite, tudo na paz? Classes estáticas são aquelas que não precisam ser instanciadas, vc não precisa criar um objeto pra utilizar os seus métodos. Elas geralmente fornecem serviços que podem ser utilizados o longo do código, conforme sua necessidade. Por exemplo, a classe Math é estática. A qualquer momento vc pode chamar um de seus métodos para realizar cálculos matemáticos.

var resultadoPotenciaDeDois = Math.Pow(variavel1, 2);

Nesse exemplo não foi preciso instanciar um objeto Math para utilização de seu método. Essa é a principal característica de uma classe estática.

Bom dia Danilo e Leonardo. Tudo blz?

Leonardo você está corretíssimo, mas queria dar uam contribuição também. Se uma classe, ou método ou atributo de uma classe são definidos como static estes serão criados na memória quando executarmos o programa, portanto é interessante definir esses recursos como serviço (aqui tento complementar a fala do Leonardo). Então uma maneira de saber se necessitaremos de um classe ou membro estático é se perguntar se uma ou mais classes necessitarão sempre de serviços de uma outra classe.

Espero ter contribuído com a discussão, fica aqui também uma recomendação de leitura o livro Orientação a Objetos na prática - Aprendendo Orientação a Objetos com Java do Caíque Cardoso, nele tem uma das melhores definições de classes estáticas que já li.

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software