Se você configurar o arquivo startup, então os comandos listados no arquivo startup serão executados ao invés de construir comandos no jshell depois do comando /reset.
Isso também significa que você não será capaz de usar as classes diretamente que são importadas por padrão e você não irá ter o método printf, a não ser que o seu arquivo startup contenham os imports.
Cria o arquivo sample.startup:

Agora execute os comandos:

O método println é definido, mas o método printf o qual foi definido por padrão no startup não está.
O prompt jshell tem o feedback quem mostra as respostas e espera entrada de dados, o prompt tem várias maneiras de mostrar as mensagens. Tem modelos pré definidos:
- Normal
- Silent
- Concise
- Verbose
O Normal é selecionado por padrão. Se você digitar /set feedback silent, o prompt retorna -> e jshell não irá detalhar os comandos. O /set feedback concise imprime um pouco de informação e /set feedback verbose imprime informações sobre os comandos executados:

Para sair do jshell digite o comando /exit. Assim você irá retornar para prompt do sistema operacional.
Vamos pegar o programa HelloWorld.java. O conteúdo é esse:
public class HelloWorld{
public static void main(String[] args){
System.out.println(“Hello World!”);
}
}
Para compilar o código execute o comando javac HelloWorld.java.

Esse comando gera um arquivo .class no mesmo diretório. Para executar o programa faça o comando java HelloWorld.

Dessa maneira você criou e executou o sue primeiro programa Java.
No Java, você não pode ter método ou funções standalone, como em outras linguagens. Todo método pertence a uma classe e todo classe pode ser declarado em um arquivo separado.
O nome do arquivo tem o mesmo nome da classe. O compilador requer que a classe seja pública. Mesmo classes não públicas costumam seguir essa convenção.
Se você renomear o arquivo HelloWorld.java para Hello.java, o compilador irá mostrar um erro quando tentar compilar o arquivo com o novo nome.

A declaração da classe começa com a palavra class, depois do nome da classe abre-se um par de chaves. Tudo dentro das chaves pertence a classe.
Por enquanto esqueça a palavra public e vamos ver o método main. O método não retorna nenhum valor, além disso, o retorno do valor é void.
O argumento chamado args, é uma String de array. Quando a JVM começa o método main, passa os argumentos para o programa que está dentro desse array. No momento nada é passado nesse array.
Links
Fonte: Java 9 Programming By Example
Deixe um comentário