HOWTO · Java
Use métodos estáticos em Java
Este artigo apresenta quando usar métodos estáticos em Java.
Em Java, a palavra-chave estática invoca um método ou uma variável sem instanciar a instância da classe. Você não precisa criar a variável de instância, e o nome da classe é usado diretamente para fazer uma chamada para as variáveis e métodos de membro.
Um exemplo desse método público é o método main. A função não precisa de nenhum objeto para chamar este comando; portanto, a execução do programa começa do principal.
Métodos estáticos ou variáveis pertencem a uma classe em vez de seu objeto. Você não precisa criar a instância da classe para chamar os métodos estáticos. Membros estáticos também podem acessar as variáveis estáticas e alterar o valor das mesmas.
O código dentro dos métodos estáticos tem menos probabilidade de ser alterado. Além disso, os métodos estáticos não podem ser substituídos. É menos provável que o código seja alterado, portanto, ele deve ser extraído na função.
As vantagens obtidas com as variáveis estáticas estão listadas abaixo.
- O uso de variáveis estáticas aumenta o desempenho do programa. Depois de criados, eles são injetados diretamente como e quando necessário.
- As chamadas de método se tornam mais fáceis quando não há necessidade de adicionar uma palavra-chave
newjunto com o nome do método. Em vez disso, o nome da classe se acostuma a chamar os métodos.
Abaixo está o programa que demonstra o uso de estática em Java.
public class Main {
public static void main(String[] args) {
College clg = new College();
clg.display();
System.out.println(clg.clgName);
System.out.println(College.getName());
}
}
class College {
static String name = "IJK";
String clgName = "IIT";
static String getName() {
// return clgName;
return name;
}
public void display() {
System.out.println("I am in College");
}
}
No bloco de código acima, o uso do método estático e variáveis estáticas estão presentes.
O código cria uma classe de driver pública chamada StaticMethodRepresentation e uma classe não pública College. A classe da faculdade possui membros estáticos e não estáticos. A função do driver tenta criar a instância da classe College usando a palavra-chave new. A nova palavra-chave invoca o construtor público da classe College.
Como nenhum construtor público é definido, a JVM chama o construtor padrão na classe. A instância de classe é usada para invocar a função pública display da classe College; que é invocado e imprime a string presente.
Da mesma forma, usando a instância dessa classe, pode-se acessar sua variável de membro. Mas para acessar as funções estáticas, não há necessidade de criar uma nova instância de classe. Em vez disso, o nome da classe pode ser usado para chamá-la. Portanto, na última instrução de impressão, o nome da classe invoca a função estática.
Na definição da função, existe uma linha comentada. A linha tenta acessar o membro não estático da classe. Ainda assim, membros estáticos podem acessar apenas os membros estáticos; portanto, não é viável acessá-los. Portanto, uma string estática é retornada da função.
A saída do bloco de código acima, mostrando o uso de palavras-chave estáticas, é mostrada abaixo.
I am in College IIT IJK