O que são métodos estáticos?
São métodos associados diretamente a uma classe e não a suas instâncias, isto é, existem independentente de objeto da classe.
Para usar métodos estáticos não é necessário declara ou instanciar um objeto, bastando utilizá-lo diretamente como abaixo.
// Classe MathUtils.java public class MathUtils { // método comum public int soma1 (int a, int b) { return (a + b); } // método estático public static int soma2(int a, int b) { return (a + b); } }
Embora a implementação dos métodos soma1 e soma2 sejam idênticas, o segundo é um método estático. Para utilizar soma1 devemos fazê-lo através de um objeto, ou seja, instanciando um objeto da classe MathUtils:
MathUtils o = new MathUtils(); int resultado = o.soma1(2, 3); System.out.println("Resultado = "+resultado);
O uso soma2 não requer um objeto, ou seja, pode ser feito diretamente referenciando a classe MathUtils:
int resultado = MathUtils.soma2(2, 3); System.out.println("Resultado = "+resultado);
Concluindo, os métodos estáticos são simples de declarar e usar oferecendo acesso conveniente a operações que não dependem de outros valores contidos em objetos de suas classes.