JAVA A Linguagem Java

Propaganda
JAVA
A Linguagem Java
SOBRE MIM
Bruno Thiago da Silva
 Programador Java Trainee na empresa G&P.
 Cursando 2º ano de Bacharel em Sistemas de Informação na FGP (Faculdade
Gennari e Peartree), em Pederneiras.
 Formado Técnico em Informática com ênfase em programação, na ETEC Astor de
Mattos Carvalho de Cabrália Paulista.
 Linkedin: https://br.linkedin.com/in/brunosilvajava
SOBRE A APOSTILA
Esta apostila têm o objetivo de apresentar ao estudante de programação
Java um pouco sobre a história da linguagem e o processo de funcionamento de
compilação e execução.
É muito importante entender como este processo funciona, para que quando
estiver programando com alguma IDE (Exemplos: Eclipse, NetBeans), saber o que está
sendo feito por ela por ‘de trás dos panos’.
INTRODUÇÃO
A linguagem Java foi criada pela antiga Sun Microsystems na década de 90 com
o nome de ‘OAK’, primeiramente utilizado em um controle remoto chamado Star Seven
que tinha o objetivo de controlar eletrodomésticos. Em 1995 a linguagem foi rebatizada
de Java ao ser lançada uma nova versão para a internet. Desde
seu
lançamento,
a
plataforma Java foi adotada mais rapidamente do que qualquer outra linguagem de
programação na história da computação. Em 2004 Java atingiu a marca de 3 milhões de
desenvolvedores em todo mundo. Hoje é uma referência no mercado de desenvolvimento
de software. Em 2009 a empresa Oracle adquiriu a linguagem.
Para saber mais: http://www.infoescola.com/informatica/historia-do-java/
NOÇÕES BÁSICAS DE PROGRAMAÇÃO
Um pouco de linguagem de programação, compilação e execução.
Uma linguagem de programação atua como um tradutor entre você e o
computador. Em vez de aprender a linguagem nativa do computador (conhecida como
linguagem de máquina), você pode usar uma linguagem de programação (Ex: Java) para
instruir o computador de uma maneira que é mais fácil para você aprender e entender.
Essa linguagem de programação é transformada em linguagem de máquina por um
compilador, e após isso ela é executada pelo processador em um determinado Sistema
Operacional.
A LINGUAGEM JAVA
No caso de Java, o programa não é compilado para uma plataforma
(processador e sistema operacional) específica, mas para uma linguagem chamada
ByteCode.
A linguagem Java faz uso de uma máquina virtual para interpretar os
códigos bytecodes. A máquina virtual utilizada pela Oracle é a JVM (Java Virtual
Machine).
Além da JVM, existem outras máquinas virtuais fornecidas por outras
empresas, porém todas devem ser aprovadas pela Oracle para serem utilizadas.
A LINGUAGEM JAVA
Mas para que realmente serve a máquina virtual?
A máquina virtual faz com que a linguagem Java possa ser executada em
qualquer sistema operacional, ou seja, um único programa em Java pode ser utilizado
no Windows, no Linux e assim por diante.
O Slogan “Write Once, Run Anywhere” foi criado pela SUN e significa
“Escreve uma vez, rode em qualquer lugar”.
Write Once, Run Anywhere
A LINGUAGEM JAVA
Um arquivo Java (classe) possui a extensão ‘.java’. Após este arquivo ser
compilado, é criado outro arquivo com a extensão ‘.class’, este contém os códigos
bytecodes. O .class é lido pela JVM para ser executado pelo processador no SO.
O arquivo .class só é gerado caso não haja nenhum erro de compilação. Erro
de compilação ocorre quando existe algum erro de sintaxe, ou seja, a linguagem java
foi escrita de alguma forma errada, isto pode ser comparado com um erro de
português na linguagem.
A LINGUAGEM JAVA
Existe também o erro de execução, este ocorre na execução do arquivo
‘.class’. É gerado por um comportamento indesejável e não pensado no sistema, por
exemplo um erro de lógica.
É importante conhecer na prática o mecanismo de compilação e quando erros
de compilação ou de execução ocorrem.
Mas antes precisamos instalar o JDK (Java Development Kit) e criar as
variáveis de ambiente.
A LINGUAGEM JAVA
O JDK é um conjunto de utilitários disponibilizado pela Oracle. Constitui um conjunto
de programas que engloba compilador, interpretador e utilitários, fornecendo um pacote de
ferramentas básicas para o desenvolvimento de aplicações Java.
Veja agora alguns comandos disponíveis no JDK:
•
javac ( compilador )
•
java ( interpretador )
•
javadoc ( gerador de documentação )
•
jar ( programa de compactação )
A LINGUAGEM JAVA
Existem também o JRE (Java Runtime Envirorment), este é o ambiente de
execução do Java, é o mínimo que precisa ser instalado para poder rodar um
programa em Java. Portanto, ele é instalado na máquina dos usuários.
O JDK já vem com o JRE, e o JRE tem a JVM.
A LINGUAGEM JAVA
Instalando o JDK
1.
Acesse: http://www.oracle.com/technetwork/pt/java/javase/downloads/index.html;
2.
Clique em Download do JDK.
3.
Aceite a licença clicando em “Accept License Agreement” e então clique no JDK para o seu
sistema operacional.
4.
Após o download ser efetuado, execute o instalador do JDK.
A LINGUAGEM JAVA
Instalando o JDK
Aceite os temos de licença
A LINGUAGEM JAVA
Instalando o JDK
Selecione ‘Development Tools’
A LINGUAGEM JAVA
Instalando o JDK
Selecione ‘J2SE Runtime Evironment’
A LINGUAGEM JAVA
Instalando o JDK
Selecione o navegador que irá conter
o plugin do Java.
A LINGUAGEM JAVA
Instalando o JDK
Finalize.
A LINGUAGEM JAVA
Variáveis de Ambiente
Variáveis de ambiente são variáveis fora dos programas e aplicações que
são acessíveis pelos programas e aplicativos e guardam informações sobre o
ambiente em que eles se encontram.
As variáveis de ambiente JAVA_HOME e CLASSPATH são caminhos utilizados
pelo java para que ele possa encontrar o compilador e executar o código que você
está escrevendo.
A LINGUAGEM JAVA
Variáveis de Ambiente
O compilador java (javac) e o executar java (java) se encontram na pasta bin da JDK
(exemplo no Windows: C:\Program Files\Java\jdk1.8.0_45\bin). Para compilar na mão
precisamos acessá-los através do SO, por isso da necessidade de configurar as variáveis de
ambiente.
JAVA_HOME: Indica onde foi instalado o JDK.
CLASSPATH: Indica o caminho dos arquivos ‘.jar’, que estão localizados na pasta lib e jre/lib
do JDK.
A LINGUAGEM JAVA
Variáveis de Ambiente: Configuração (Windows)
1. Vá em INICIAR;
2. Botão direito em ‘Computador ’e clique em ‘Propriedades’;
3. Clique em ‘Configurações Avançadas do Sistema’;
4. Na aba ‘Avançado’ clique no botão ‘Variáveis de Ambiente’;
...
A LINGUAGEM JAVA
Variáveis de Ambiente: Configuração (Windows)
5.
Na caixa ‘Variáveis de Ambiente’, clique no botão ‘Novo...’ (Cuidado para não confundir
com a caixa ‘Variáveis de usuário para...’) para criar a variável ‘JAVA_HOME’;
6.
No campo de texto ‘Nome do usuário’ digite ‘ JAVA_HOME ’ e no campo ‘Valor da
variável’ coloque o caminho do seu JDK (Ex: ‘C:\Program Files\Java\jdk1.8.0_45’) e
clique em OK;
...
A LINGUAGEM JAVA
Variáveis de Ambiente: Configuração (Windows)
7. Novamente na caixa ‘Variáveis de Ambiente’, seleciona a variável ‘Path’ e clique
em ‘Editar’;
8. No campo de texto ‘Valor da variável’ ADICIONE no final da linha o texto
‘ ;%JAVA_HOME%/bin ’ e clique em OK. (Cuidado: não apague o que já tem,
apenas acrescente no final, após o ; ).
Pronto, terminamos a configuração.
A LINGUAGEM JAVA
Compilando na mão
1. Crie uma pasta chamada ‘Desenvolvimento’ na unidade C e dentro dela outra
pasta chamada ‘Exemplos’;
2. Abra o Bloco de Notas e o salve dando o nome de ‘Principal’ com a extensão
.java;
A classe JOptionPane faz parte do pacote Swing
A LINGUAGEM JAVA
Ela nos proporciona uma série de métodos estáticos
que ao serem invocados criam caixas de diálogos
simples e objetivas.
Compilando na mão
3. No arquivo java criado digite o código abaixo:
import javax.swing.JOptionPane;
public class Principal{
public static void main(String[] args){
JOptionPane.showMessageDialog(null, "Compilando na mão!");
}
}
Método main
A LINGUAGEM JAVA
public static void main(String[] args){
}
Compilando na mão
Mas o que é o método main?
Quando executamos um programa em Java, o sistema tem que ter um ponto
de início, como haverá muitas classes e métodos, em qual terá início? A JVM está
programada para executar o método main, portanto se você compilar e executar um
arquivo, será o método main que executará primeiro.
Como você deve ter percebido, cada sistema deve ter somente um método
main abrigado em alguma classe, geralmente chamada de Principal.
Perceba que o método main é um método estático, ou seja, a JVM não
precisa instanciar a classe que contém o main para utilizá-lo. Uma ótima utilização do
static, afinal não teria necessidade da instância. 
A LINGUAGEM JAVA
Compilando na mão
4. Abra o prompt de comando e digite o comando para chegar ao diretório;
cd C:/Desenvolvimento/Exemplos
5. Agora digite o comando de compilação abaixo;
javac Principal.java
Será gerado um arquivo chamado Principal.class (arquivo compilado).
A LINGUAGEM JAVA
Compilando na mão
6.
Agora digite o comando abaixo para executar o arquivo compilado.
java -cp . Principal
Deu tudo certo!? Se não, retorne as etapas e faça novamente.
Agora vamos ver alguns erros em tempo de compilação e em tempo de execução.
7.
Apague o arquivo .class gerado.
A LINGUAGEM JAVA
Compilando na mão
8. Altere o arquivo java, apagando a importação ‘import javax.swing.JOptionPane;’ e
deixe-o conforme o código abaixo, após isso compile e execute novamente.
public class Principal{
public static void main(String[] args){
JOptionPane.showMessageDialog(null, "Compilando na mão!");
}
}
A LINGUAGEM JAVA
Compilando na mão
Note que houve um erro e o arquivo Principal.class não foi criado, isto porque
ocorreu um erro em tempo de compilação, pois não foi importado o pacote onde a
classe ‘JOptionPane’ se encontra, para que ela fosse utilizada.
Agora coloque a importação novamente e apague o arquivo Principal.class
para vermos um erro em tempo de execução.
A LINGUAGEM JAVA
Compilando na mão
9. Crie um novo arquivo chamado Teste.java, coloque o código abaixo nele e o
compile.
public class Teste{
public String testando(String texto){
return texto;
}
}
A LINGUAGEM JAVA
Compilando na mão
10. Edite o arquivo Principal.java conforme abaixo, compile-o e execute o ‘.class’.
import javax.swing.JOptionPane;
public class Principal{
private static Teste teste;
public static void main(String[] args){
String texto = teste.testando("Testando erro em tempo de execução!");
JOptionPane.showMessageDialog(null, texto);
}
}
A LINGUAGEM JAVA
Compilando na mão
10. Deverá aparecer o erro em tempo de execução abaixo. Essa é a famosa
Exception NullPointerException, ela ocorre quando é tentado acessar um membro
não estático de classe sem esta estar instanciada. Perceba que ela mostra a
classe e a linha onde o erro se encontra: ‘Principal.java:9’
Exception in thread "main" java.lang.NullPointerException
at Principal.main(Principal.java:9)
A LINGUAGEM JAVA
Compilando na mão
Para que execute normalmente, instancie a classe Teste na primeira linha
dentro do main, compile e execute novamente.
A LINGUAGEM JAVA
Arquivo ‘.jar’ (Java ARchive)
O jeito mais simples de trabalhar com um conjunto de classes e arquivos de
configurações é compactá-los em um arquivo só. O Java trabalha com o arquivo ‘jar’,
no estilo de um arquivo zip. O .jar é o executável de um programa em Java. O
arquivo ‘jar’ pode ser criado com qualquer compactador zip disponível no mercado,
inclusive o programa jar que vem junto com o JDK.
Iremos aprender a criar este arquivo com o programa jar do JDK.
A LINGUAGEM JAVA
Arquivo Manifest.txt
Mas antes de criarmos o .jar, vamos criar o arquivo ‘Manifest.txt’. Ele é
utilizado pelo arquivo ‘.jar’ para que a JVM saiba qual é a classe principal da sua
aplicação.
É importante manter duas linhas em branco no final deste arquivo para que
ele seja interpretado corretamente. Porquê? Boa pergunta, ainda não sei! Para mim
isso parece ser uma gambiarra solução de contorno.
A LINGUAGEM JAVA
Arquivo Manifest.txt
Crie o arquivo Manifest.txt dentro da pasta exemplos com o conteúdo
abaixo. Feito isso, vamos criar o ‘.jar’.
Manifest-Version: 1.0
Created-By: 1.7.0_11 (Oracle Corporation)
Main-Class: Principal
Atenção: não se esqueça das duas linha em branco no final.
A LINGUAGEM JAVA
Criando o arquivo ‘.jar’
Execute
o
comando
abaixo
dentro
do
diretório
‘C:/Desenvolvimento/exemplos’.
jar –cvfm programa.jar Manifest.txt C:/Desenvolvimento/exemplos/*.class
Será criado um arquivo chamado ‘programa.jar’. Agora vamos executar este
arquivo.
A LINGUAGEM JAVA
Executando o arquivo ‘.jar’
Execute
o
comando
‘C:/Desenvolvimento/exemplos’.
java -jar programa.jar
O programa será executado.
abaixo
dentro
do
diretório
A LINGUAGEM JAVA
Um pouco mais sobre o arquivo ‘.jar’
Os arquivos ‘.jar’ não existem apenas para compactar arquivos de um programa
Java, eles também são utilizados para compactar classes pertencentes à bibliotecas. Essas
bibliotecas são utilizadas pelos programas para que estes tenham acesso às suas
funcionalidades já prontas. Por exemplo: uma biblioteca para trabalhar com calendário
chamada JCalendar é um arquivo compactado que pode ser adicionado ao seu programa,
para que você não precise criar calendários ‘na mão’.
A LINGUAGEM JAVA
Java SE, Java EE e Java ME
Java SE: Essa tecnologia vem do acrônimo ‘Java Standard Edition’, ela é utilizada
para criar aplicações desktop. Basicamente é a versão base para o desenvolvimento
Java, isso porque todas as outras plataformas herdam direta ou indiretamente todos
os conceitos e componentes dessa tecnologia. Nosso curso irá trabalhar, inicialmente,
com Java SE. Os arquivos de uma aplicação desktop são ‘compactados’ em um
arquivo.jar, que já mostramos.
A LINGUAGEM JAVA
Todas as opções e funções contidas no eclipse são
plugins integrados que já vem automaticamente
definidos no download inicial, porém é possível
criar novos plugins, ou seja, novas funcionalidades
no próprio eclipse em que se trabalha
Java SE, Java EE e Java ME
Java EE: Essa tecnologia vem do acrônimo ‘Java Enterprise Edition’, que pode ser
considerada uma versão empresarial para o desenvolvimento em java que engloba
desde aplicações EJB até aplicações WEB. O plugin do Eclipse que permite que o
desenvolvimento para WEB seja possível é o WTP.
A LINGUAGEM JAVA
Java SE, Java EE e Java ME
Java ME: Essa tecnologia vem do acrônimo ‘Java Micro Edition’, é uma plataforma
destinada aos dispositivos móveis e sistemas embarcados (embedded systems), ou
seja, dispositivos com recursos limitados. Esta edição abrange celulares, PDAs,
controles remotos, enfim, uma vasta gama de dispositivos.
A LINGUAGEM JAVA
E agora?
Chegamos ao fim desta apostila. Parabéns!!!
Mas e agora? Agora que você já sabe como funciona o processo de compilação e
execução do Java, na próxima apostila iremos aprender a trabalhar com a IDE Eclipse para
fazermos nossos programas em Java, pode ter certeza que ele irá facilitar muito nossa vida.
Muito obrigado pela atenção. Espero que tenha gostado. 
Bruno Silva
Download