Vou Falar um Pouco Sobre Java , que um tema Da Nossa Atualidade  (¬.¬)  !
Autor: J Markos Cetepes | Publicado: 2012-04-22T11:44:00-07:00


Java é uma tecnologia. É um mundo tão grande que ninguém se arrisca a dizer: ? Eu sei Java ?. Basicamente constitui-se de uma linguagem de programação e um programa para execução chamado de máquina virtual ou virtual machine. Quando programa-se em Java usa-se a linguagem de programação Java e um ambiente de desenvolvimento Java para gerar um software que será executado em um ambiente de distribuição Java. Tudo isso é a tecnologia Java.
1.1 O que pode ser feito em Java?

TUDO! Java é uma linguagem que não se prende a nenhuma arquitetura e a nenhuma empresa, é rápida e estável. Pode construir sistemas críticos, sistemas que precisam de velocidade e até sistemas que vão para fora do planeta, como a sonda Spirit enviada pela Nasa para Marte. Java tem um mar de projetos open source, que estão lá, esperando por usuários e desenvolvedores.

Java tem o apoio, a participação e o patrocínio das maiores organizações e empresas de tecnologia do Mundo: Oracle, Sun Microsystems, IBM, Nokia Corporation, Hewlett-Packard, Borland Software Corporation, Apache Software Foundation, SAP AG, SavaJe Tenologies, Apple Computer Inc, Cisco Systems, Fujitsu Limited, Macromedia Inc, Rational Software, Unisys, America Online, Hitachi LTDA, Mitsubishi Eletric Corp, NEC, Sony Internacional, Sharp, Ericsson Inc, Matsushita Eletric, Motorola, Samsung Eletronics, Siemens AG, Symbian, Novell, PalmSource Inc, BEA Systems, Object People e muitas outras.

1.2 Um pouco de história

A tecnologia Java começou a ser criada em 1991 com o nome de Green Project. O projeto era esperado como a próxima geração de software embarcado. Nele trabalhavam James Grosling, Mike Sheridan e Patrik Naughton. Em 1992 surge a linguagem ? Oak ? a primeira máquina virtual implementada. Várias tentativas de negócio foram feitas para vender o ? Oak ? mas nenhuma com sucesso.

Em 1994 surge a internet, a Sun vê uma nova possibilidade para o Green Project e cria uma linguagem para construir aplicativos Web baseada na Oak, a Java. Em 23 de maio de 1995 a linguagem Java é oficialmente lançada na SunWorld Expo 95 com a versão JDK 1.0 alpha. A Netscape aposta na idéia e inicia a implementação de interpretadores Java em seu navegador, possibilitando a criação de Java applets. A partir desta etapa o Java começa a crescer muito.

Em 1997 é lançado a prova da maturidade da tecnolo

De 1998 até hoje a tecnologia evoluiu muito possuindo um dos maiores repositórios de projetos livres do mundo, o java.net. Em 1999 surgiu a plataforma para desenvolvimento e distribuição corporativa batizado de Java 2 Enterprise Edition (J2EE) e a plataforma Java 2 Mobile Edition (J2ME) para dispositivos móveis, celulares, PDAs e outros aparelhos limitados.

Atualmente Java é uma das linguagens mais usadas e serve para qualquer tipo de aplicação, entre elas: web, desktop, servidores, mainframes, jogos, aplicações móveis, chips de identificação, etc.

Você sabia que seu cartão de crédito pode ter um JavaCard?

1.3 Máquina Virtual?

Java é multiplataforma. Quando um programa Java é compilado um código intermediário é gerado, chamado de bytecode. Este bytecode é interpretado pelas máquinas virtuais java (JVMs) para a maioria dos sistemas operacionais. A máquina virtual é a responsável por criar um ambiente multiplataforma, ou seja, se alguém construir um sistema operacional novo, basta criar uma máquina virtual java que traduza os bytecodes para código nativo e pronto! Todas as aplicações java estarão rodando sem problemas.

Entre outras funções, a máquina virtual java também é responsável por carregar de forma segura todas as classes do programa, verificar se os bytecodes aderem a especificação JVM e se eles não violam a integridade e a segurança do sistema.

A figura 1.1 mostra como acontece a compilação e a execução de um programa Java. De um código Java, que está em um arquivo. java, o compilador javac gera o bytecode: um arquivo. class. Após isso uma máquina virtual java executa o bytecode e roda o programa.&nbsp;


 Figura 1.1: Compilador e Interpretador Java

Como existe um programa traduzindo um código a cada execução do sistema, poderia-se dizer que Java sempre será mais lenta que as linguagens que geram código nativo do sistema operacional como Delphi, VB ou C + +. Isso era fato até 1996 quando a Sun criou o compilador Just-in-time (JIT) que analisa e retira códigos desnecessários aumentando consideravelmente a velocidade da execução. Atualmente o Java é mais rápido que o próprio C em vários aspectos.


 
1.6 Instalação e Execução

O Java está disponível para download no site da Sun: http://java.sun.com/ clicando em J2SE. Agora é só escolher a versão desejada, clicar em downloads e escolher o subgrupo desejado JDK para desenvolvedores ou JRE para usuários finais. Neste site também existe para download o NetBeans, que é uma ferramenta para desenvolvimento Java livre. Para os iniciantes a sugestão é baixar somente o JDK, sem o NetBeans e utilizar algum editor de texto para escrever seus programas. Quando não se usa a IDE o desenvolvedor é forçado a aprender muito mais.

Após escolher o grupo, a licença do Java é mostrada. Aceitando a licença da Sun, aparecerão as verões próprias para cada sistema operacional. Basta escolher o mais apropriado e aguardar o download. A instalação é simples, não é demorada e depende de cada sistema operacional. Geralmente, basta executar o arquivo baixado e seguir as instruções.

Após a instalação pode-se ir até um shell ou um prompt de comando e digitar java - version. O comando fará aparecer a versão da máquina virtual instalada. No diretório de instalação do Java encontra-se uma pasta bin e dentro dela existem várias ferramentas. Na tabela 1.1 Mostra a descrição de algumas delas.&nbsp;
<!--[if !supportLineBreakNewLine]-->
<!--[endif]-->
  <!--[if !supportLists]-->1.&nbsp; <!--[endif]-->Executável&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Nome&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Descrição&nbsp;&nbsp;<!--[if !supportLists]-->2.&nbsp; <!--[endif]-->&nbsp;&nbsp;<!--[if !supportLists]-->3.&nbsp; <!--[endif]-->appletviewer&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Java&nbsp;Applet&nbsp;Viewer&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Visualizar&nbsp;applets&nbsp;sem&nbsp;navegador.&nbsp;&nbsp;<!--[if !supportLists]-->4.&nbsp; <!--[endif]-->&nbsp;&nbsp;<!--[if !supportLists]-->5.&nbsp; <!--[endif]-->java&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Interpretador&nbsp;Java&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Executa&nbsp;programas&nbsp;java.&nbsp;&nbsp;<!--[if !supportLists]-->6.&nbsp; <!--[endif]-->&nbsp;&nbsp;<!--[if !supportLists]-->7.&nbsp; <!--[endif]-->javac&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Compilador&nbsp;Java&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Compila&nbsp;programas&nbsp;java.&nbsp;&nbsp;<!--[if !supportLists]-->8.&nbsp; <!--[endif]-->&nbsp;&nbsp;<!--[if !supportLists]-->9.&nbsp; <!--[endif]-->javadoc&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Documentador&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Gera&nbsp;documentação&nbsp;pelos&nbsp;coment.&nbsp;&nbsp;<!--[if !supportLists]-->10. <!--[endif]-->&nbsp;&nbsp;<!--[if !supportLists]-->11. <!--[endif]-->jar&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Compactador&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Compacta&nbsp;em&nbsp;um&nbsp;único&nbsp;arquivo.&nbsp;&nbsp;<!--[if !supportLists]-->12. <!--[endif]-->&nbsp;&nbsp;<!--[if !supportLists]-->13. <!--[endif]-->javap&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Disassemblador&nbsp;Java&nbsp;&nbsp;&nbsp;&nbsp;Mostra&nbsp;o&nbsp;código&nbsp;de&nbsp;um.&nbsp;class.&nbsp;&nbsp;<!--[if !supportLists]-->14. <!--[endif]-->&nbsp;&nbsp;<!--[if !supportLists]-->15. <!--[endif]-->jdb&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Java&nbsp;Debugger&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Debug&nbsp;de&nbsp;programas&nbsp;java.&nbsp;&nbsp;
Tabela 1.1: Ferramentas disponíveis para os desenvolvedores&nbsp;


estas ferramentas são invocadas via linha de comando e são úteis quando queremos independência de ambiente de produção. Utilizando elas, o único recurso necessário é um editor de textos, como um Notepad, para desenvolver o código. Ainda no diretório de instalação do Java, encontra-se uma pasta docs onde estarão todos os documentos necessários para o desenvolvimento. Outros manuais e documentação de APIs podem ser baixadas no site da Sun.

1.7 O compilador javac

O javac é um compilador de código fonte java com uma saída em bytecodes, os. class. É encontrado dentro da pasta bin da instalação. Para executá-lo, siga essas regras:&nbsp;
<!--[if !supportLineBreakNewLine]-->
<!--[endif]-->  <!--[if !supportLists]-->1.&nbsp; <!--[endif]-->&gt;&nbsp;javac&nbsp;[opções]&nbsp;[...]&nbsp;&nbsp;&nbsp;

Pode-se compilar um ou mais arquivos utilizando as características de cada sistema operacional, como:
<!--[if !supportLineBreakNewLine]-->
<!--[endif]-->  <!--[if !supportLists]-->1.&nbsp; <!--[endif]-->&gt;&nbsp;javac&nbsp;MinhaPrimeiraClasse.java&nbsp;&nbsp;&nbsp;<!--[if !supportLists]-->2.&nbsp; <!--[endif]-->&gt;&nbsp;javac&nbsp;MinhaPrimeira.&nbsp;*&nbsp;&nbsp;&nbsp;<!--[if !supportLists]-->3.&nbsp; <!--[endif]-->&gt;&nbsp;javac&nbsp;MeuProjeto&nbsp;&nbsp;&nbsp;

Uma série de opções que podem ser utilizadas são mostradas na tabela abaixo:&nbsp;

<!--[if !supportLineBreakNewLine]-->
<!--[endif]-->
<!--[if !supportLists]-->·&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <!--[endif]-->- classpath: Especifica o caminho para as classes / bibliotecas.&nbsp;<!--[if !supportLists]-->·&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <!--[endif]-->- cp: [caminho] Especifica o caminho para as classes / bibliotecas.&nbsp;<!--[if !supportLists]-->·&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <!--[endif]-->- d: [dir] Diretório para armazenar os arquivos compilados.&nbsp;<!--[if !supportLists]-->·&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <!--[endif]-->- source: Localização dos fontes para serem compilados.&nbsp;<!--[if !supportLists]-->·&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <!--[endif]-->- deprecation: Advertência para funções que não devem ser utilizadas.&nbsp;<!--[if !supportLists]-->·&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <!--[endif]-->- g: Compila com tabelas de debug.&nbsp;<!--[if !supportLists]-->·&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <!--[endif]-->- nowarn: Desativa as mensagens de Warning.&nbsp;<!--[if !supportLists]-->·&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <!--[endif]-->- verbose: Mostra detalhes da compilação.&nbsp;<!--[if !supportLists]-->·&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <!--[endif]-->- depend: Compila todos os fontes, incluindo suas dependências.&nbsp;<!--[if !supportLists]-->·&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <!--[endif]-->- target: Especifica a versão da JVM que irá executar o programa.&nbsp;<!--[if !supportLists]-->·&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <!--[endif]-->- O: Otimização de código para gerar programas mais rápidos.&nbsp;<!--[if !supportLists]-->·&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <!--[endif]-->- version: Informa a versão do javac.&nbsp;<!--[if !supportLists]-->·&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <!--[endif]-->- help: Pequena ajuda com lista de opções.&nbsp;<!--[if !supportLists]-->·&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <!--[endif]-->- X: Opções avançadas de compilação.&nbsp;<!--[if !supportLists]-->·&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <!--[endif]-->- J: Passa um parâmetro fixo para o interpretador.&nbsp;

1.8 O interpretador java

O aplicativo java, encontrado na pasta bin da instalação, executa aplicações java compiladas (bytecodes). Para utilizá-lo, siga as instruções:&nbsp;
<!--[if !supportLineBreakNewLine]-->
<!--[endif]-->  <!--[if !supportLists]-->1.&nbsp; <!--[endif]-->java&nbsp;[opções]&nbsp;[argumentos&nbsp;de&nbsp;entrada&nbsp;do&nbsp;programa]&nbsp;java&nbsp;[opções]&nbsp;-&nbsp;jar&nbsp;[argumentos&nbsp;de&nbsp;entrada&nbsp;do&nbsp;programa]&nbsp;&nbsp;&nbsp;

Exemplo:
<!--[if !supportLineBreakNewLine]-->
<!--[endif]-->  <!--[if !supportLists]-->1.&nbsp; <!--[endif]-->&gt;&nbsp;java&nbsp;MinhaPrimeiraClasse&nbsp;&nbsp;&nbsp;<!--[if !supportLists]-->2.&nbsp; <!--[endif]-->&gt;&nbsp;java&nbsp;-&nbsp;jar&nbsp;MeuPrimeiroJar&nbsp;&nbsp;

As opções possíveis são listadas na tabela abaixo&nbsp;

Opção Descrição&nbsp;

<!--[if !supportLineBreakNewLine]-->
<!--[endif]-->
<!--[if !supportLists]-->·&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <!--[endif]-->- classpath: Especifica o caminho para as classes / bibliotecas.&nbsp;<!--[if !supportLists]-->·&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <!--[endif]-->- cp: Especifica o caminho para as classes / bibliotecas.&nbsp;<!--[if !supportLists]-->·&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <!--[endif]-->- verbose: Mostra detalhes da compilação.&nbsp;<!--[if !supportLists]-->·&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <!--[endif]-->- version: Informa a versão do javac.&nbsp;<!--[if !supportLists]-->·&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <!--[endif]-->- help: Pequena ajuda com lista de opções.&nbsp;<!--[if !supportLists]-->·&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <!--[endif]-->- X: Opções avançadas de interpretação.&nbsp;<!--[if !supportLists]-->·&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <!--[endif]-->- Xdebug: Permite o uso do depurador.&nbsp;<!--[if !supportLists]-->·&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <!--[endif]-->- D =: Definição de propriedades com a chave nome = valor.&nbsp;

O interpretador javaw é utilizado opcionalmente em programas gráficos. O java cria uma janela de comandos a cada execução do programa, já o javaw não. Para executar uma applet usa-se o utilitário appletviewer, também encontrado na pasta bin da instalação do java. Neste caso, não é necessário um navegador para a visualização.

2 O que é Java?

Começamos nesta seção a colocar a mão na massa desenvolvendo código, compilando, executando e testando.

A linguagem Java possui um princípio: ? Mantenha-na simples, pois o que é complexo é difícil de construir, testar, depurar, aprimorar e explicar. ? Visando continuar com este princípio, no código 2 está um pequeno e simples exemplo muito conhecido em todas as linguagens. O Olá Mundo! feito em linguagem Java.
<!--[if !supportLineBreakNewLine]-->
<!--[endif]-->  <!--[if !supportLists]-->1.&nbsp; <!--[endif]-->//&nbsp;Olá&nbsp;mundo&nbsp;em&nbsp;java.&nbsp;&nbsp;<!--[if !supportLists]-->2.&nbsp; <!--[endif]-->//&nbsp;Arquivo&nbsp;BemVindo.java.&nbsp;&nbsp;<!--[if !supportLists]-->3.&nbsp; <!--[endif]-->public&nbsp;class&nbsp;BemVindo&nbsp;{&nbsp;&nbsp;<!--[if !supportLists]-->4.&nbsp; <!--[endif]-->&nbsp;&nbsp;&nbsp;public&nbsp;static&nbsp;void&nbsp;main(String[]&nbsp;args)&nbsp;{&nbsp;&nbsp;<!--[if !supportLists]-->5.&nbsp; <!--[endif]-->&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.out.println("Olá&nbsp;Mundo!");&nbsp;&nbsp;<!--[if !supportLists]-->6.&nbsp; <!--[endif]-->&nbsp;&nbsp;&nbsp;}&nbsp;&nbsp;<!--[if !supportLists]-->7.&nbsp; <!--[endif]-->}&nbsp;&nbsp;&nbsp;


Este código deve ser salvo em um arquivo com o nome BemVindo.java e em seguida deve-se executar: javac BemVindo.java estando na pasta que contém o arquivo. Este comando irá gerar um BemVindo.class que é o ? executável ? do java. Para rodar o programa, basta digitar: java BemVindo. Será impresso na tela do prompt o texto: Olá Mundo!.

Todo código fonte em Java deve ser salvo com a extensão. java. O compilador irá gerar no mínimo um. class para cada. java existente.

Este código não é muito diferente de um código em linguagem C, isto acontece porque a linguagem Java foi criada com base na linguagem C possuindo quase todas as palavras reservadas dela e um conceito que deixa muitos desenvolvedores descontentes: o case-sensitive. Isso mesmo, Java é case-sensitive, portanto maiúsculas são diferentes de minúsculas, ? a ? é diferente de ? A ?.

Ao contrário do C, Java é fortemente tipada, tanto que não existe nenhum tipo de variável primitiva indefinido como o variant do Delphi e não possui ponteiros. Java não possui herança múltipla de classes, diretivas de pré-compilação, modelos (Templates) e nem funções sem classes. A semântica de orientação a objetos é do SmallTalk, uma famosa e antiga linguagem totalmente orientada a objetos.

No java, os comandos são terminados com o sinal de ponto e vírgula ?; ? e os blocos de código tem inicio e tem o seu fim representados pelo uso das chaves ? {? e ?} ? respectivamente. Não existe restrição com espaços em branco, com tabulação ou nova linha, ficando a cargo do desenvolvedor definir o formato do código fonte.

2.1 Explicando o Olá Mundo!

Iniciaremos pela linha 3, public class BemVindo onde existe uma definição de classe. Cada arquivo java tem, pelo menos, uma classe definida e uma classe pública. O nome da classe pública deve ser o mesmo do nome do arquivo, considerando a propriedade case-sensitive da linguagem. Mais a frente será tratado a visibilidade dos identificadores. Por convenção todo a nome de classe deve iniciar com uma letra em maiúscula e a cada nova palavra a primeira letra também deve ser maiúscula, como no exemplo.

Na linha 4, public static void main (String [] args) existe a definição de um método. Este método é essencial para todo o programa java. O método main é o que será chamado para iniciar a execução da aplicação, é o início de tudo. Este método deve ser público public, estático static, sem retorno (void) e deve possuir um array de cadeia de caracteres String [] como parâmetro. Nesta cadeia de caracteres é que virá os argumentos / parâmetros da aplicação. Todos esses conceitos serão vistos mais adiante.

A linguagem Java diferencia os métodos dos atributos pelo uso dos parênteses (e). Nela todos os métodos, sem exceção, usam parênteses tanto na definição quanto no uso, mesmo aqueles que não possuem parâmetros.

Na linha 5, System.out.println (" Olá Mundo! "); existe uma chamada de método. É a primeira e a última linha de código que será executada pelo interpretador Java. System é uma classe que mantém uma série de configurações sobre o sistema que a máquina virtual está executando. Uma dessas configurações é o atributo público out, que define o local onde está a saída padrão. O atributo out é uma variável de escrita da classe PrintStream que possui o método println (). Este método é quem irá enviar a mensagem Olá Mundo! para o prompt ou shell exibir.&nbsp;

2.2 Comentários e documentação

Analisando o código, pode-se constatar que a linha 1 e a linha 2 possuem os caracteres // o que significa que são comentários de programa. Este é o comentário de linha e tudo que estiver depois da // não será compilado. Para fazer um comentário com mais de uma linha, o comentário de bloco, utiliza-se a construção /* e */. Os caracteres /* abrem um bloco de comentário e */ fecham o bloco. Por exemplo:&nbsp;
<!--[if !supportLineBreakNewLine]-->
<!--[endif]-->  <!--[if !supportLists]-->1.&nbsp; <!--[endif]-->/*&nbsp;Este&nbsp;é&nbsp;um&nbsp;comentário&nbsp;de&nbsp;bloco&nbsp;para&nbsp;o&nbsp;programa&nbsp;<!--[if !supportLists]-->2.&nbsp; <!--[endif]-->&nbsp;&nbsp;&nbsp;BemVindo.java&nbsp;que&nbsp;apresentará&nbsp;a&nbsp;mensagem&nbsp;Olá&nbsp;<!--[if !supportLists]-->3.&nbsp; <!--[endif]-->&nbsp;&nbsp;&nbsp;Mundo!&nbsp;para&nbsp;quem&nbsp;o&nbsp;executar.&nbsp;*/&nbsp;&nbsp;

Este tipo de comentário pode-se estender por muitas linhas, quantas o programador achar necessário. Mas não abuse, comentário demais também complica o sistema. As duas maneiras de comentário acima são herdadas das características da linguagem C. Mas a linguagem Java não foi só cópia, ela inventou o conceito de comentário de documentação. Este comentário é específico para quem precisa saber o que o fonte faz sem ver o código, ou seja, é um comentário para documentos. Este tipo de comentário é semelhante ao comentário de bloco, mas abre o bloco com um asterisco a mais: /** e fecha com o mesmo */. Exemplo:  <!--[if !supportLists]-->1.&nbsp; <!--[endif]-->/**&nbsp;<!--[if !supportLists]-->2.&nbsp; <!--[endif]-->&nbsp;&nbsp;&nbsp;Esta&nbsp;classe&nbsp;chamada&nbsp;de&nbsp;BemVindo&nbsp;é&nbsp;simplesmente&nbsp;&nbsp;<!--[if !supportLists]-->3.&nbsp; <!--[endif]-->&nbsp;&nbsp;&nbsp;um&nbsp;Olá&nbsp;Mundo!&nbsp;da&nbsp;linguagem&nbsp;Java.&nbsp;<!--[if !supportLists]-->4.&nbsp; <!--[endif]-->&nbsp;&nbsp;&nbsp;@author&nbsp;Vitor&nbsp;Fernando&nbsp;Pamplona&nbsp;<!--[if !supportLists]-->5.&nbsp; <!--[endif]-->&nbsp;&nbsp;&nbsp;@since&nbsp;15/01/2005&nbsp;<!--[if !supportLists]-->6.&nbsp; <!--[endif]-->&nbsp;*/&nbsp;&nbsp;<!--[if !supportLists]-->7.&nbsp; <!--[endif]-->public&nbsp;class&nbsp;BemVindo&nbsp;{&nbsp;&nbsp;<!--[if !supportLists]-->8.&nbsp; <!--[endif]-->&nbsp;&nbsp;&nbsp;public&nbsp;static&nbsp;void&nbsp;main(String[]&nbsp;args)&nbsp;{&nbsp;&nbsp;<!--[if !supportLists]-->9.&nbsp; <!--[endif]-->&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.out.println("Olá&nbsp;Mundo!");&nbsp;&nbsp;<!--[if !supportLists]-->10. <!--[endif]-->&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;