Original Article: A Java Program
Author: guyhaas.com

Um Programa Java

Introdução

Nesta lição, você aprenderá

  1. O que faz o Java um sucesso com os programadores,
  2. quais são os componentes do mundo de Java,
  3. como você constrói um aplicativo Java passando pelo "Edit, Compile, Execute" process.

Por que Java?

Java é uma linguagem de programação construída para a era da Internet.  Foi construído para um mundo no qual tudo que tem algum tipo de componente eletrônico: sistemas estéreo, telefones celulares, carros, até mesmo sua geladeira, estão todos na Internet.  Este mundo está ao virar da esquina.

O que é tão exclusivo sobre Java que impulsionou sua rápida e ampla aceitação?

  • Está disponível em mais dispositivos em todo o mundo do que qualquer outro idioma.  Note que eu digo dispositivos - não apenas computadores. O Java está atualmente sendo usado não só em sistemas mainframe na empresa e computadores pessoais no escritório e em casa - também está sendo executado em celulares.
  • Foi cuidadosamente projetado para eliminar muitas das causas mais comuns de erros de programação - bugs.  Programas Java que compilam livre de erros, tende a funcionar!  A forte digitação de dados e o gerenciamento completo de memória são dois recursos que tornam isso possível.
  • Fornece programas seguros que podem ser executados na Internet, sem se preocupar com a infecção de seu sistema com algum vírus ou plantar um cavalo de tróia.

O que é um programa Java e como faço para criar um?

Vejamos o que compõe um programa Java.  Um programa Java é criado por escrito (e referenciando já disponível) coisas chamadas classes. No sentido mais simples, um programa Java é um grupo de aulas.  Você irá construir pelo menos um, digitando seu código-fonte em um arquivo.

O material que você entrará (texto) possui uma estrutura muito específica (sua syntax) que o compilador Java espera.  Você cria seus arquivos de linguagem de programação Java com um editor disponível no seu computador.  Em um PC com Windows, o Wordpad ou o Bloco de Notas funcionará bem.  Em uma estação de trabalho do Sun, textedit é um bom editor.

Depois de ter algum código-fonte Java completo em um arquivo, você compilá-lo.  O compilador Java transforma seu arquivo cheio de caracteres em outro arquivo que contém instruções que um JVM (Java Virtual Machine) pode interpretar, um arquivo ".class".

Figura 20.1

A máquina virtual Java assume a partir daqui.  JVMs existem para qualquer computador e sistema operacional, por exemplo PCs com Windows, computadores da Sun Microsystems que executam o Solaris ou Linux, celulares, etc....  A JVM leva seu arquivo ".class", carrega-o em sua memória virtual, liga muitas coisas juntas e, em seguida, começa a interpretar / executar o programa.  Durante a ligação, o seu arquivo de classe será combinado com outras classes que fazem parte do ambiente Java, por exemplo, java.awt.Canvas, java.lang.String, etc....  Existem classes padrão para ajudá-lo a fazer coisas como exibir texto na tela, obter caracteres digitados no teclado, arquivos de leitura / gravação, exibir itens gráficos, se comunicar pela Internet, ...  E, então, fora ele vai; seu programa ganha vida.

Figura 20.2

Um aplicativo Java, nosso primeiro!

Existem dois tipos de programas Java: applets e aplicações.  Você começará com uma aplicação muito simples.

Para começar, você precisa começar trabalhando no caminho do que é conhecido como o processo ou ciclo "Edit, Compile, Execute".  Isso é algo que você tenderá a fazer uma e outra vez enquanto trabalha em seus programas Java.  Este exercício dará uma idéia de como você estará trabalhando no ambiente Java.  Para tornar isso rápido e simples, você começará com o que é o programa Java mais curto possível.

Digite o seguinte texto no seu computador, colocando-o em um arquivo chamado "Hello.java"

   class Hello
   {
      public static void main(String[] args)
      {
         System.out.println("Hello World!");   
      }
   } // end class Hello 

Depois de tê-lo em um arquivo no computador, verifique se ele corresponde ao exemplo - personagem para personagem, apenas em maiúsculas, onde o exemplo mostra caracteres em maiúsculas, a mesma pontuação, etc....  Quando você acha que o tem, certifique-se de salvar o texto no arquivo: Hello.java.

Agora é hora de executar o compilador Java com o arquivo "Hello.java" como entrada.  Isso vai se tornar no arquivo "Hello.class". Digite:

   javac Hello.java    

Queixou-se?  Encontrou um erro de digitação que você perdeu?  Se assim for, volte para o editor e compare seu texto com o que eu forneci.  O compilador informa o número da linha na qual detectou um erro.  Isso deve ajudar.  Mas, o erro também pode estar em uma linha anterior.  Repita este ciclo "Edit, Compile" até obter o compilador para sair reclamando.

Agora você pode usar a JVM para executar seu programa.  Digite:

   java Hello    

Observe que você não digita "java Hello.class" mesmo que você tenha que fornecer o nome de arquivo completo para o compilador Java.  A Máquina Virtual Java (JVM) assume e procura o arquivo Hello.class mesmo que você tenha fornecido o nome da classe Hello, não o nome do arquivo.  Se você tiver tudo certo, o sistema deve responder com:

   Hello World!    

Legal ... Você acabou de entrar e executar seu primeiro aplicativo Java. 

Você usou o comando println no seu programa jLogo tambem.  Eu adicionei este comando em preparação para sua mudança para Java.  No logotipo padrão, o print comando faz o que o jLogo println.  Mas, no Java, print não adiciona o newline caráter à saída - assim como o caminho print funciona no jLogo.  Em Berkeley Logo, o comando type deixa o newline.

jLogo
  Command
  
Logo
  Command
  
Java
  Method
  
Descrição
  print   type   print   Exibir o texto fornecido como sua entrada / argumento.
  println   print   println   Exibir o texto fornecido como sua entrada / argumento, seguido por um caractere de nova linha.
Tabela 20.1

Jogue ao redor, tente ambos os métodos.

Dicas

Um dos erros iniciais mais comuns é misturar o caso do personagem.  Em Java, o caso é importante.  A palavra someThing não é o mesmo que a palavra algo.

O nome de uma classe deve coincidir com o nome do arquivo em que está.  O código-fonte Java compilará sem qualquer indicação de problemas.  Mas, quando você tenta executá-lo, a JVM reclamará que não pode encontrar sua classe, cujo nome é o nome do arquivo.

Finalmente, observe que o comando do compilador java, javac, espera um nome de arquivo completo, incluindo a parte ".java"; mas o comando java não aceitará o nome completo do arquivo - espera encontrar um arquivo com o nome que você especifica, terminando em ".class"