JShell no Java: Guia Prático com Exemplos e Dicas

Explorando o JShell no Java

JShell

O JShell, introduzido no Java 9, é uma ferramenta de linha de comando que permite, portanto, executar código Java de forma interativa. Além disso, ele segue o conceito de REPL (Read-Eval-Print Loop), tornando mais fácil, assim, testar trechos de código, prototipar soluções e aprender a linguagem Java sem precisar configurar um ambiente de desenvolvimento completo.

Vantagens do JShell

  1. Feedback Imediato: Execute comandos e veja os resultados instantaneamente.
  2. Testes Rápidos: Teste pequenos trechos de código sem criar classes ou métodos principais.
  3. Aprendizado Simples: Ideal para iniciantes explorarem a linguagem Java.
  4. Prototipagem: Crie e refine soluções rapidamente antes de integrá-las em um projeto maior.

Primeiros Passos com o JShell

Abrindo o JShell

Certifique-se de ter o Java 9 ou superior instalado. Abra o terminal e digite:

jshell

Você deve ver uma saída similar a esta:

| Welcome to JShell -- Version 9
| For an introduction type: /help intro</p>

Executando Comandos Simples

Testar operações matemáticas:


jshell> 2 + 3
$1 ==> 5

jshell> "Java " + "9"
$2 ==> "Java 9"

Exemplos de Uso Prático

1. Declarar Variáveis


jshell> int x = 10;
x ==> 10

jshell> x + 5
$3 ==> 15

2. Criar Métodos


jshell> int soma(int a, int b) {
 return a + b;
}
| created method soma(int, int)

jshell> soma(4, 7)
$4 ==> 11

3. Trabalhar com Classes


jshell> class Pessoa {
 String nome;
 int idade;

 Pessoa(String nome, int idade) {
 this.nome = nome;
 this.idade = idade;
 }
 }
| created class Pessoa

jshell> Pessoa p = new Pessoa("João", 25);
p ==> Pessoa@1a2b3c

jshell> p.nome
$5 ==> "João"

Comandos Úteis no JShell

  • /vars: Lista todas as variáveis declaradas.
  • /methods: Lista todos os métodos criados.
  • /classes: Lista todas as classes definidas.
  • /imports: Exibe os pacotes importados atualmente.
  • /exit: Sai do JShell.

Exemplo:


jshell> /vars
| int x = 10

Configuração e Melhores Práticas

Importar Pacotes Necessários

Você pode importar pacotes no JShell da mesma forma que faria em um arquivo Java:


jshell> import java.util.*;

Salvar e Carregar Sessões

Para salvar o trabalho feito no JShell:


jshell> /save caminho/para/arquivo.jsh

Para carregar um arquivo salvo:

jshell> /save caminho/para/arquivo.jsh</p>

Para carregar um arquivo salvo:

jshell> /open caminho/para/arquivo.jsh</p>

Configurar Alias para Comandos Frequentes

Use o comando /set para configurar atalhos:


jshell> /set feedback concise

Exemplos de Código Mais Avançados

Trabalhando com Streams


jshell> List<Integer> numeros = Arrays.asList(1, 2, 3, 4, 5);
numeros ==> [1, 2, 3, 4, 5]

jshell> numeros.stream().filter(n -> n % 2 == 0).forEach(System.out::println);
2
4

Manipulação de Arquivos


jshell> import java.nio.file.*;

jshell> Files.writeString(Path.of("teste.txt"), "Conteúdo do arquivo");

jshell> String conteudo = Files.readString(Path.of("teste.txt"));
conteudo ==> "Conteúdo do arquivo"

Gráficos ou Imagens Recomendados

  1. Fluxograma: Mostrando o ciclo de REPL (Read, Eval, Print, Loop).
  2. Captura de Tela: Uma sessão do JShell com exemplos de códigos interativos.

Referências

  1. Documentação Oficial do JShell
  2. Guia da Oracle sobre Java 9
  3. Artigo da Baeldung sobre JShell

Leave a Comment

Your email address will not be published. Required fields are marked *

Scroll to Top