Escolar Documentos
Profissional Documentos
Cultura Documentos
Linguagem Java
Prof. Sidney Cunha
Faculdade Estácio
Histórico
• A linguagem Java surgiu em 1991 quando cientistas da
Sun, liderados por Patrick Naughton e James Gosling,
projetaram uma linguagem pequena para ser utilizada
em eletrodomésticos em geral.
• O projeto se chamava “Green”. Como o pessoal da Sun
vinha de uma geração UNIX, eles basearam a linguagem
em C++ e ela foi chamada originalmente de “Oak”. Oak é
um tipo de árvore a qual Gosling gostava de apreciar, e
que podia ser vista da janela de sua sala na Sun.
• A linguagem Oak já existia, por isso foi rebatizada de
Java.
Histórico
• O projeto Green passou os anos de 1993 e 1994
procurando uma empresa que quisesse comprar a sua
tecnologia, mas não encontraram ninguém.
• Paralelamente a World Wide Web crescia mais e mais, e
para mostrar o poder de Java, Patrick Naughton e
Jonathan Payne construíram o browser HotJava. Este
browser reconhecia applets e, por isso, tinha uma
máquina virtual Java embutida em si.
• Em 1995, a Netscape decidiu tornar a próxima versão do
seu browser (versão 2.0) apta a reconhecer applets Java.
A partir de então, todas as versões posteriores do
Netscape, inclusive do Internet Explorer, reconhecem
Java
Características da Linguagem
Java
• Parecida com C, C++:
• A sintaxe da linguagem Java é muito semelhante a da linguagem C
ou de C++, mas a sintaxe de Java fornece uma versão mais limpa
do que C++. Em Java não existe aritmética de ponteiros,
estruturas, uniões e etc.
• Orientada a Objetos:
• Java é uma linguagem voltada para a programação orientada a
objetos e, por isso, todo o código está contido dentro de classes.
Java suporta herança simples, mas não herança múltipla. A
ausência de herança múltipla pode ser compensada pelo uso de
herança e interfaces, onde uma classe herda o comportamento
de sua superclasse além de oferecer uma implementação para
uma ou mais interfaces.
Características da Linguagem
Java
• Segura:
• A presença de coleta automática de lixo (Garbage Collection)
evita erros comuns que os programadores cometem quando são
obrigados a gerenciar diretamente a memória (C, C++, Pascal).
• A eliminação do uso de ponteiros, em favor do uso de vetores,
objetos e outras estruturas substitutivas, traz benefícios em
termos de segurança.
• O programador é proibido de obter acesso à memória que não
pertence ao seu programa, além de não ter chances de cometer
erros comuns tais como uso indevido de aritmética de ponteiros.
Características da Linguagem
Java
• Suporta concorrência:
• Java suporta Multithreading que é a capacidade de um
programa fazer mais de uma coisa ao mesmo tempo
como, por exemplo, imprimir enquanto lê um fax.
• A linguagem permite a criação, de maneira fácil, de
vários “threads” de execução, que eliminam o período
de inatividade do processador executando
concorrentemente ou tomando vantagem da execução
paralela real em sistemas multiprocessadores
Características da Linguagem
Java
• Compilada e Interpretada:
• Um programa em Java é compilado para um código
composto por instruções chamadas de “bytecode”. O
“bytecode” é um código de uma máquina virtual,
chamada Máquina Virtual Java (Java Virtual Machine -
JVM), idealizada pelos criadores da linguagem. Os
bytecodes são independentes de plataforma e são
interpretados pela JVM para serem executados no
computador.
• O código Java é compilado uma única vez, porém o
programa é interpretado toda vez que for executado.
Esse processo pode ser mais bem visualizado na figura
a seguir
Características da Linguagem
Java
A Máquina Virtual Java
• Quando trabalhamos com Java, um dos termos que mais
ouvimos é “Maquina Virtual Java” (MVJ) (ou Java Virtual
Machine, em inglês).
• A Máquina Virtual Java é um computador abstrato definido
por uma especificação. Para executar um programa Java,
precisamos de uma implementação desta máquina virtual.
• Quando uma aplicação Java inicia a sua execução, uma
instância runtime da MVJ nasce. Ela morre no momento em
que a aplicação completa a sua execução.
• Se nós executarmos três aplicações Java iguais, usando a mesma
implementação de MVJ e na mesma máquina, nós teremos 3
instâncias de MJV executando. Cada aplicação Java irá executar
na sua própria MVJ
Java – Algumas Siglas
• J2SE (Java 2 Standard Edition) é uma ferramenta de
desenvolvimento para a plataforma Java que contém todo o
ambiente necessário para a criação e execução de aplicações
Java, incluindo a máquina virtual Java (JVM), o compilador
Java, as APIs do Java e outras ferramentas utilitárias.
• Servlets
• Aplicações
• Aplicações cliente/servidor
• Atribuição: =
• Aritméticos: + - * / % (resto)
• Aritméticos de Atribuição: += -= *= /=