Você está na página 1de 32

Oficina de Java para Iniciantes

Paloma Costa
paloma-costa@softwarelivre.org
http://www.javawoman.cjb.net
Oficina de Java para Iniciantes    Paloma Costa
Paloma Costa
● Desenvolvedora Java
– Inicio em 2000, trabalhando com Java desde 01/02
– Tecnóloga em Processamento de Dados / Ulbra
– Usuária GNU/Linux desde 2001
– Gnuria desde início de 2003
– Oficineira e Palestrante
– Website em http://www.javawoman.cjb.net

Oficina de Java para Iniciantes    Paloma Costa
Objetivos
● Apresentar os conceitos iniciais da linguagem e
guiar os participantes em seus primeiros passos.
Ao final o aluno estará apto a instalar o SDK Java e
compilar seu primeiro programa!!!
● Tenham uma boa oficina!

Oficina de Java para Iniciantes    Paloma Costa
Agenda
● Histórico
● Versões
● Características
● JVM
● Bytecodes
● Atualmente Falando
● Tipos
● Desvantagens
Oficina de Java para Iniciantes    Paloma Costa
Agenda
● Conceitos de OO
● Classes
● Bibliotecas
● Construtores
● Primeiro Programa
● Métodos
● Referências

Oficina de Java para Iniciantes    Paloma Costa
Histórico

● 1991
– Pesquisadores da SUN
– Projeto Green
– Dispositivos Inteligentes
– Software para controle de eletrodomésticos [TVs
interativas, torradeiras interativas, etc...]
– Sistema para controle de redes de
eletrodomésticos

Oficina de Java para Iniciantes    Paloma Costa
Histórico

– Idéia inicial era usar C++


– Linguagem pequena, eficiente e facilmente
portável
– Linguagem Oak
– O surgimento da Web redirecionou a linguagem
Oak dando origem a linguagem Java

Oficina de Java para Iniciantes    Paloma Costa
Histórico

● 1994
– Criado um navegador que permitia execução de
applets Java, o HotJava.
– Sun vê no Java uma tecnologia para criar
páginas na Web com o chamado conteúdo
dinâmico.

Oficina de Java para Iniciantes    Paloma Costa
Histórico

● 1995
– Novembro, JDK 1.0
– Interesse da comunidade de desenvolvedores,
conteúdo web dinâmico

Oficina de Java para Iniciantes    Paloma Costa
Histórico

● 1999
– JDK 1.2 ou Java 2
– Amadurecimento do Java e o suporte oficial da
Sun ao sistema operacional GNU/Linux.
– Novas APIs [bibliotecas e classes]

Oficina de Java para Iniciantes    Paloma Costa
Versões
● Java 1.0 - 1.0.2: Mercado não via o GNU/Linux
com seriedade, apesar da sua força como base em
websites.
● Java 1.1: Máquinas virtuais e JITs, performance
aceitáveis, surgimento de ambientes profissionais.
● Java 2: IBM e HP questionavam a Sun sobre a
evolução do Java. Uma das consequências foi a
adoção do Java 2 pela IBM, que fornece alguns
dos melhores compiladores, máquinas virtuais,
IDEs e servidores de aplicações do mercado.
Oficina de Java para Iniciantes    Paloma Costa
Versões
● Java 1.3: Final de 2000, Java Sound,
melhorias em diversos pacotes, RMI, Swing.
● Java 1.4 Beta: Maio de 2001. Suporte a
XML e CORBA, novos serviços, JDBC 3.0.

Oficina de Java para Iniciantes    Paloma Costa
Características
● Java como linguagem de alto nível quanto uma
plataforma;
● Orientado a objetos;
● Independente de arquitetura [multiplataforma];
● Portável, robusta, segura, interpretada, distribuída,
etc... .

Oficina de Java para Iniciantes    Paloma Costa
JVM
● Java é tanto compilada como interpretada;
● Bytecodes, linguagem de máquina, interpretador;
● JVM [Java Virtual Machine] e uma API [Java
Application Programming Interface];
● 'Processador Virtual'.

Oficina de Java para Iniciantes    Paloma Costa
Bytecodes
● Salvar o código fonte com extensão .java, compilar
o programa com javac e por fim executar os
bytecodes resultantes [.class] utilizando o comando
java.
● Programas que podem ser executados em
Websites ou rodar normalmente em qualquer
computador com suporte a Java.

Oficina de Java para Iniciantes    Paloma Costa
Atualmente Falando
● Ampla utilização, Banco do Brasil.
● Utilizada para criar páginas Web interativas e
dinâmicas, desenvolver aplicativos corporativos em
larga escala e fornecer aplicativos para dispositivos
como telefones celulares, pagers, PDAs, etc... .

Oficina de Java para Iniciantes    Paloma Costa
Tipos

● Applets
– Mais de um milhão de páginas na web com applets Java.
– Plug-ins suportados pela maioria dos browsers.
● Aplicativos
– Aplicações no Console: Saída em modo texto windowed.
– Aplicações Java: Cria e gerencia múltiplas janelas, uso de
GUIs.

Oficina de Java para Iniciantes    Paloma Costa
Desvantagens
– Para ter flexibilidade e segurança, abre-se mão do
tempo de execução;
– Um programa Java típico roda 10 vezes mais lento
que um programa equivalente em linguagem
nativa;
– Se o ambiente suportar JIT o problema está
resolvido.
– Compiladores JIT convertem programas Java para
linguagem nativa de máquina nativa assim que os
mesmos são lidos.
Oficina de Java para Iniciantes    Paloma Costa
Conceitos Básicos de Orientação a Objetos

● Classe:
● Modelo que permite especificar um conjunto de
características.
● Tipo definido pelo usuário que contém a
especificação dos objetos. Analogicamente, é o
mesmo que o tipo inteiro significa para as variáveis
declaradas como inteiros.
● A classe envolve e associa funções e dados,
controlando acesso a estes.
● Definir uma classe implica em especificar os seus
atributos [dados] e seus métodos [funções].
● Exemplo: Classe Estudante
Oficina de Java para Iniciantes    Paloma Costa
Conceitos Básicos de OO
● Instâncias:
– Objetos associados a cada classe.
● Métodos:
– Comportamento dos objetos.
● Objetos:
– Dados.

Oficina de Java para Iniciantes    Paloma Costa
Conceitos Básicos de OO
● Mensagem:
– Requisição para um objeto executar uma de
suas operações. Uma mensagem determina
uma ação a ser executada, mas não a forma
pela qual esta será executada.

Oficina de Java para Iniciantes    Paloma Costa
Classes
● Uma classe possui 2 tipos de elementos:
– Variáveis ou atributos [elementos que
diferenciam objetos de uma mesma classe].
– Métodos: Operações realizáveis sobre a classe.
● Objeto: Instâncias de uma classe.
● Um objeto depois de criado conterá todas as
variáveis incluídas na definição da sua classe.

Oficina de Java para Iniciantes    Paloma Costa
Conceitos Básicos de OO
● Objeto:
– Um objeto consiste de uma memória privada e
de um conjunto de operações ou, em outras
palavras, de um conjunto de estruturas de dados
e de rotinas que agem sobre essas estruturas. A
natureza de um objeto e suas operações
dependem do tipo de componente que ele
representa.

Oficina de Java para Iniciantes    Paloma Costa
Bibliotecas
● Classes e métodos.
● Aprender a programar em duas partes:
– Aprender de modo a programar suas própias
classes;
– Aprender como utilizar as classes das extensas
bibliotecas das classes Java.

Oficina de Java para Iniciantes    Paloma Costa
Classes
● Variáveis:
– Variáveis de Instância: cada objeto da classe
possui uma cópia de cada variável de instância.
– Variáveis da classe: Possui apenas uma cópia
da variável, compartilhando-a entre todos os
objetos.

Oficina de Java para Iniciantes    Paloma Costa
Classes
● Métodos definidos em uma classe permitem a
manipulação das variáveis da classe em questão.
● Métodos:
– Métodos de instância.
– Métodos da classe (static): podem ser
executados mesmo que nenhum objeto tenha
sido instanciado (exemplo main()).

Oficina de Java para Iniciantes    Paloma Costa
Construtores
● É o método invocado a cada vez que um novo
objeto é criado - método de inicialização.
● Características básicas:
– É sempre do tipo void.
– Possui sempre o mesmo nome da classe.

Oficina de Java para Iniciantes    Paloma Costa
Primeiro Programa Java
● Observações:
– Class: palavra reservada que marca a
declaração de uma classe.
– Public: especificador [globalmente acessível].
– Static: especificador que indica que o método
deve ser compartilhado por todos os objetos
criados a partir dessa classe. Indica que o
método é acessível mesmo se não houverem
objetos definidos.

Oficina de Java para Iniciantes    Paloma Costa
Método da Classe
● Main: Sempre static posto que é chamado sem
que se crie nenhum objeto de sua classe.
● Void: Valor de retorno da função.
● System.out.println: Chamado do método println
para o atributo out (standard output : objeto
membro da classe System) da classe ou objeto
System (classe standard). O argumento é uma
constante do tipo String.

Oficina de Java para Iniciantes    Paloma Costa
Referências
● http://java.sun.com
● http://www.javabr.com.br [Clube Java Brasil)
● http://www.gojug.com.br [Java User Group]
● http://www.soujava.org.br [JUG Sucesu]
● http://www.javasoft.com
● http://www.bruceeckel.com

Oficina de Java para Iniciantes    Paloma Costa
Perguntas

/?

Oficina de Java para Iniciantes    Paloma Costa
Final
● Muito Obrigada!

– Paloma Costa
– http://www.javawoman.cjb.net

Oficina de Java para Iniciantes    Paloma Costa