CodeGym/Blogue Java/Random-PT/O que é uma classe estática em Java?
John Squirrels
Nível 41
San Francisco

O que é uma classe estática em Java?

Publicado no grupo Random-PT
Java é uma linguagem de programação orientada a objetos e os objetos são os principais blocos de construção em Java. No entanto, Java também fornece o conceito de classe estática. Uma classe estática é uma classe que só pode conter métodos estáticos, variáveis ​​e classes aninhadas. Neste artigo, exploraremos o que é uma classe estática, como ela funciona e sua implementação em Java.

Classe estática em Java

Uma classe estática em Java é uma classe que não pode ser instanciada. Ou seja, não podemos criar objetos de uma classe estática. Só podemos acessar seus membros usando o próprio nome da classe. Em outras palavras, uma classe estática é uma classe que contém apenas membros estáticos. Classes estáticas são frequentemente usadas para agrupar métodos utilitários relacionados. Por exemplo, a classe Math em Java é uma classe estática que fornece várias operações matemáticas, como encontrar o valor máximo ou mínimo, funções trigonométricas e muito mais. Podemos acessar os métodos da classe Math usando o nome da classe e o operador ponto, assim: Math.max(5, 10) .

Exemplo

Vamos dar uma olhada em um exemplo de classe estática em Java. Suponha que queiramos criar uma classe para realizar várias operações com strings, como reverter uma string, encontrar o comprimento de uma string e muito mais. Neste exemplo, criamos uma classe estática chamada StringUtils , que contém dois métodos estáticos: reverse e length . Esses métodos usam uma string como argumento e retornam a string invertida e o comprimento da string, respectivamente. No método principal , criamos uma string str e a passamos para os métodos `reverse` e ​​`length` da classe StringUtils .
public class StringUtils {

    public static String reverse(String str) {
        StringBuilder sb = new StringBuilder(str);
        return sb.reverse().toString();
    }

    public static int length(String str) {
        return str.length();
    }

    public static void main(String[] args) {
        String str = "Hello, World!";

        String reversedStr = StringUtils.reverse(str);
        int strLength = StringUtils.length(str);
        System.out.println(reversedStr);
        System.out.println(strLength);
    }
}
A saída do programa será:
!dlroW ,olleH 13
No próximo exemplo atualizado, adicionamos uma classe estática aninhada chamada Formatter dentro da classe StringUtils . Esta classe estática aninhada também contém um método estático chamado format que pega uma string e retorna sua versão em maiúscula. No método principal , usamos a classe aninhada estática Formatter para formatar a string str e imprimi-la no console. Também chamamos os métodos reverso e de comprimento da classe StringUtils para reverter a string e encontrar seu comprimento, respectivamente.
public class StringUtils {

    // nested Static class
    public static class Formatter {
        public static String format(String str) {
            return str.toUpperCase();
        }
    }

    public static String reverse(String str) {
        StringBuilder sb = new StringBuilder(str);
        return sb.reverse().toString();
    }

    public static int length(String str) {
        return str.length();
    }

    public static void main(String[] args) {
        String str = "Hello, World!";

        // Using static class
        String formattedStr = StringUtils.Formatter.format(str);
        System.out.println(formattedStr);

        String reversedStr = StringUtils.reverse(str);
        int strLength = StringUtils.length(str);
        System.out.println(reversedStr);
        System.out.println(strLength);
    }
}
A saída do programa será:
OLÁ MUNDO! !dlroW ,olleH 13
Como você pode ver, as classes estáticas em Java também podem conter classes aninhadas estáticas, que podem ser usadas para agrupar funcionalidades relacionadas.

Conclusão

Concluindo, uma classe estática em Java é uma classe que só pode conter métodos estáticos, variáveis ​​​​e classes aninhadas. Não podemos criar objetos de uma classe estática e só podemos acessar seus membros usando o próprio nome da classe. Classes estáticas são frequentemente usadas para agrupar métodos utilitários relacionados. No exemplo acima, vimos como criar uma classe estática e usá-la para realizar várias operações com strings.
Comentários
  • Populares
  • Novas
  • Antigas
Você precisa acessar para deixar um comentário
Esta página ainda não tem nenhum comentário