System
Introdução
A classe java.lang.System faz parte do núcleo da linguagem Java e fornece acesso a recursos essenciais do ambiente de execução, como entrada e saída padrão, propriedades do sistema, variáveis de ambiente e controle básico da JVM.
Por estar no pacote java.lang, ela é importada automaticamente em qualquer aplicação Java.
Finalidade
A principal finalidade da classe System é atuar como uma ponte entre a aplicação Java e o sistema operacional, oferecendo mecanismos padronizados para:
- Exibir informações no console
- Ler dados de entrada padrão
- Obter informações do ambiente e da JVM
- Controlar aspectos básicos da execução do programa
Principais Recursos
Saída padrão (System.out)
O objeto System.out representa o fluxo de saída padrão da aplicação, geralmente associado ao console.
Ele é utilizado para exibir textos, valores de variáveis e resultados de operações durante a execução do programa.
System.out.println("Olá, mundo!");
Exibindo valores de variáveis
É possível imprimir diretamente o valor de variáveis de qualquer tipo primitivo ou objeto.
int idade = 25;
double altura = 1.75;
System.out.println(idade);
System.out.println(altura);
Concatenação de valores
A concatenação é feita com o operador +, permitindo combinar textos e variáveis em uma única saída.
String nome = "Ana";
int idade = 30;
System.out.println("Nome: " + nome);
System.out.println("Idade: " + idade + " anos");
Formatação com printf
O método printf permite formatar a saída de forma mais controlada, utilizando especificadores de formato.
String nome = "Carlos";
int idade = 28;
double salario = 3500.50;
System.out.printf("Nome: %s%n", nome);
System.out.printf("Idade: %d anos%n", idade);
System.out.printf("Salário: R$ %.2f%n", salario);
Principais especificadores de formato:
%s→ texto (String)%d→ números inteiros%f→ números decimais%n→ quebra de linha (portável entre sistemas)
O uso de printf é recomendado quando se deseja uma saída mais organizada e legível, especialmente ao exibir dados tabulares ou relatórios simples.
Entrada padrão (System.in)
Fornece acesso à entrada padrão, normalmente o teclado.
Scanner scanner = new Scanner(System.in);
String nome = scanner.nextLine();
Saída de erro (System.err)
Usada para exibir mensagens de erro de forma separada da saída padrão.
System.err.println("Ocorreu um erro!");
Propriedades do sistema
Permite acessar informações sobre o ambiente de execução, como sistema operacional e versão do Java.
String os = System.getProperty("os.name");
String javaVersion = System.getProperty("java.version");
Variáveis de ambiente
Acessa variáveis definidas no sistema operacional.
String path = System.getenv("PATH");
Controle da execução
Permite encerrar a execução da JVM explicitamente.
System.exit(0);
Considerações
A classe System é amplamente utilizada em aplicações Java, especialmente para depuração, logging simples e interação básica com o ambiente. Por ser uma classe utilitária, todos os seus membros são estáticos e não podem ser instanciados.